语法错误还是引擎错误?

e0bqpujr  于 2021-06-20  发布在  Mysql
关注(0)|答案(2)|浏览(237)

大家好,我正在尝试创建一个网页,以创建一个数据库从一个php网页。但在运行页面并创建mysql数据库时,浏览器会返回以下错误:
sql语法有错误;使用新版本服务器的权利。
我输入的代码是myisam引擎,而不是mariadb(或air),所以我不理解这个问题,因为我从xampp的控制面板检查了是否有顾虑,并且我仍然使用的版本在myisam引擎中有。
我复制了我用过的代码,感谢所有想帮我的人。

< $db = mysql_connect('localhost', 'admin', 'pizzaballa') or die
 ('Non è possibile connettersi. Controllare i parametri di
 connessione.');

 $query = 'CREATE DATABASE IF NOT EXISTS moviesite';
 mysql_query($query, $db) or die(mysql_error($db));

 mysql_select_db('moviesite', $db) or die(mysql_error($db));

 $query = 'CREATE TABLE movie ( movie_id INTEGER UNSIGNED NOT NULL
 AUTO_INCRMENT, movie_name VARCHAR(255) NOT NULL, movie_type TINYINT
 NOT NULL DEFAULT 0, movie_year SMALLINT UNSIGNED NOT NULL DEFAULT 0,
 movie_leadactor INTEGER UNSIGNED NOT NULL DEFAULT 0, movie_director
 INTEGER UNSIGNED NOT NULL DEFAULT 0,

 PRIMARY KEY (movie_id), KEY movie_type (movie_type, movie_year) )
 ENGINE=MyISAM'; mysql_query($query, $db) or die (mysql_error($db));

 $query = 'CREATE TABLE movietype ( movietype_id TINYINT UNSIGNED NOT
 NULL AUTO_INCREMENT, movietype_label VARCHAR (100) NOT NULL, PRIMARY
 KEY (movietype_id) ) ENGINE=MyISAM'; mysql_query($query, $db) or die
 (mysql_error($db));

 $query = 'CREATE TABLE people ( people_id INTEGER UNSIGNED NOT NULL
 AUTO_INCREMENT, people_fullname VARCHAR (255) NOT NULL, people_isactor
 TINYINT(1) UNSIGNED NOT NULL DEFAULT 0, people_isdirector TYNIINT(1)
 UNSIGNED NOT NULL DEFAULT 0,

 PRIMARY KEY (people_id) ) ENGINE=MyISAM'; mysql_query($query, $db) or
 die (mysql_error($db));

 echo 'Database movie creato correttamente!';
zazmityj

zazmityj1#

“您的sql语法有错误;”-这很清楚。其中之一 mysql_query 语句在sql中有错误。
1) 总是把这样的代码 Package 起来 try &赫利普; catch . 读这个
2) 使用ide(如[eclipse]9https://www.eclipse.org/pdt/),但还有其他的),并学习使用调试器。它是你拥有的最强大的工具。你可以设置一个断点,让代码运行,它就会停在那里。然后,您可以检查变量和调用堆栈,逐行遍历代码,直到编写错误代码。
这两件事不仅会回答这个问题,而且会回答更多的问题,这些问题你可能会问我们在未来,但现在可以回答你自己。

fivyi3re

fivyi3re2#

CREATE TABLE people ( people_id INTEGER UNSIGNED NOT NULL
 AUTO_INCREMENT, people_fullname VARCHAR (255) NOT NULL, people_isactor
 TINYINT(1) UNSIGNED NOT NULL DEFAULT 0, people_isdirector TYNIINT(1)
 UNSIGNED NOT NULL DEFAULT 0,
 PRIMARY KEY (people_id) ) ENGINE=MyISAM

tyniint不是有效的列类型。这应该纠正到tinyint。
完整的错误消息应该让您大致了解错误的来源。如果没有,那么将查询粘贴到任何带有语法着色的sql编辑器中也可能很有用。

相关问题