[英]Creating table on php having error on sql syntax
我要构建的程序是使用php在mysql 中创建一个表。 表名是从前一页的表单输入到文本框中的值。
我有一个问题说明:
您的 SQL 语法有错误; 检查与您的 MySQL 服务器版本相对应的手册,了解在第 1 行的“2014(ID_Number INT NOT NULL,PRIMARY KEY(ID_Number),First_Name VARCH”附近使用的正确语法)
CREATE TABLE $filename(
ID_Number INT NOT NULL,
PRIMARY KEY (ID_Number),
First_Name VARCHAR(50),
Middle_Name VARCHAR(50),
Last_Name VARCHAR(50),
Year INT,
Course VARCHAR(50),
Position VARCHAR(50),
Party VARCHAR(50),
Picture VARCHAR(50),
vote INT,
)
您需要删除 create 语句中最后一列之后的逗号
vote INT,
(创建表时出错:您的 SQL 语法有错误;请检查与您的 MySQL 服务器版本相对应的手册,了解在 ' 2014( ID_Number INT NOT NULL, PRIMARY KEY (ID_Number), First_Name VARCH' at line 附近使用的正确语法) 1')
除了其他可能的错误(如其他答案中所建议的那样),上面的错误消息专门返回,因为您试图创建一个名为2014的表,这是不允许的。
“标识符可以以数字开头,但除非引用,否则不能仅由数字组成”。 [ MySql 手册:9.2 模式对象名称]
您可以使用反引号仅转义数字表名:
CREATE TABLE `2014`
....
字符串连接是错误的。 尝试这个 -
$sql = "CREATE TABLE $filename(".
"ID_Number INT NOT NULL,".
"PRIMARY KEY (ID_Number),".
"First_Name VARCHAR(50),".
"Middle_Name VARCHAR(50),".
"Last_Name VARCHAR(50),".
"Year INT,".
"Course VARCHAR(50),".
"Position VARCHAR(50),".
"Party VARCHAR(50),".
"Picture VARCHAR(50),".
"vote INT".
")";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.