MySQL-PhpMyadmin-创建多个表
我不明白为什么这个查询不能在PHPMyAdmin中创建这个表结构 我始终收到此错误消息: 1064-您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解要使用的正确语法 接近"MAX",, 外键(form_id)引用第4行的form(id))'MySQL-PhpMyadmin-创建多个表,php,mysql,ddl,create-table,Php,Mysql,Ddl,Create Table,我不明白为什么这个查询不能在PHPMyAdmin中创建这个表结构 我始终收到此错误消息: 1064-您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解要使用的正确语法 接近"MAX",, 外键(form_id)引用第4行的form(id))' varchar(max)是MS SQL Server的语法。MySQL没有相应的版本,所以只能使用很长的版本。此外,解决此问题后,您将遇到一个问题,表单数据.form\u id与表单.id的类型不同(一个未签名,另一个未签名),因此无法
varchar(max)
是MS SQL Server的语法。MySQL没有相应的版本,所以只能使用很长的版本。此外,解决此问题后,您将遇到一个问题,表单数据.form\u id
与表单.id
的类型不同(一个未签名,另一个未签名),因此无法引用它。简言之:
CREATE TABLE form_data(
Id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
form_id INT UNSIGNED, -- Second issue
formdata VARCHAR(4000), -- First issue
FOREIGN KEY (form_id) REFERENCES form (Id)
);
varchar(max)
是MS SQL Server的语法。MySQL没有相应的版本,所以只能使用很长的版本。此外,解决此问题后,您将遇到一个问题,表单数据.form\u id
与表单.id
的类型不同(一个未签名,另一个未签名),因此无法引用它。简言之:
CREATE TABLE form_data(
Id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
form_id INT UNSIGNED, -- Second issue
formdata VARCHAR(4000), -- First issue
FOREIGN KEY (form_id) REFERENCES form (Id)
);
表
表单数据中有两个问题:
表单id的类型,它应该是INT UNSIGNED,以匹配表的id类型form
使用formdata VARCHAR(MAX),您应该将MAX更改为实整数,例如255
请尝试以下代码:
CREATE TABLE form(
Id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
Title VARCHAR(500),
Is_Active BIT,
Is_Trash BIT,
Date_Created DATETIME
);
CREATE TABLE form_data(
Id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
form_id INT UNSIGNED,
formdata VARCHAR(255),
FOREIGN KEY (form_id) REFERENCES form (Id)
);
表表单数据中有两个问题:
表单id的类型,它应该是INT UNSIGNED,以匹配表的id类型form
使用formdata VARCHAR(MAX),您应该将MAX更改为实整数,例如255
请尝试以下代码:
CREATE TABLE form(
Id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
Title VARCHAR(500),
Is_Active BIT,
Is_Trash BIT,
Date_Created DATETIME
);
CREATE TABLE form_data(
Id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
form_id INT UNSIGNED,
formdata VARCHAR(255),
FOREIGN KEY (form_id) REFERENCES form (Id)
);
您的错误来自:
formdata VARCHAR(MAX),
将MAX更改为一个值 您的错误来自:
formdata VARCHAR(MAX),
将MAX更改为一个值