我知道,这已经被问过几百次,但我环顾四周互联网,但没有找到什么可能是错我的语法:错误与MySQL“CREATE TABLE”查询
mysql_select_db('Projects');
$sql = "CREATE TABLE $data[ID] (
ID INT NOT NULL,
Creator INT NOT NULL,
Name VARCHAR(20) NOT NULL,
Version VARCHAR(20) NOT NULL,
Status VARCHAR(20) NOT NULL,
Date VARCHAR(20) NOT NULL,
Skript VARCHAR(20) NOT NULL,
Filename VARCHAR(20) NOT NULL,
Downloads INT NOT NULL,
PRIMARY KEY(ID)
)";
if (mysql_query($sql)){
echo "Created";
}else{
echo "Not created, ".mysql_error();
}
我尝试使用反引号,引号et.c但是徒劳。显示在错误中的表名(21)是正确的。
下面是我的错误,其中包括回声“不创建”:
不是创造,你在你的SQL语法错误;检查对应于您的MySQL服务器版本的手册,以便在第1行附近使用'23(ID INT NOT NULL,Creator INT NOT NULL,名称VARCHAR(20)NOT NUL'附近使用的正确语法
$ data [ID]的值是多少? – bestprogrammerintheworld 2013-04-20 14:02:30
如果在运行查询之前回显$ sql,会得到什么结果? – bestprogrammerintheworld 2013-04-20 14:04:23
$ data [ID]的值是21,在反引号内工作! @bestprogrammerintheworld – SamTebbs33 2013-04-20 14:17:09