什么';我的MySQL语句中的错误是什么?
根据phpMyAdmin,下面的SQL语句有一个语法错误,但我无法发现它是什么。有什么想法吗什么';我的MySQL语句中的错误是什么?,mysql,Mysql,根据phpMyAdmin,下面的SQL语句有一个语法错误,但我无法发现它是什么。有什么想法吗 CREATE TABLE allocations( `student_uid` INT unsigned NOT NULL DEFAULT 0, `active` INT unsigned NOT NULL DEFAULT 1, `name` VARCHAR( 255 ) NOT NULL DEFAULT '', `internal_id` VARCHAR( 255 ) DEFAULT '', `tut
CREATE TABLE allocations(
`student_uid` INT unsigned NOT NULL DEFAULT 0,
`active` INT unsigned NOT NULL DEFAULT 1,
`name` VARCHAR( 255 ) NOT NULL DEFAULT '',
`internal_id` VARCHAR( 255 ) DEFAULT '',
`tutor_uid` INT NOT NULL DEFAULT 0,
`allocater_uid` INT unsigned NOT NULL DEFAULT 0,
`time_created` INT NOT NULL DEFAULT 0,
`remote_time` FLOAT NOT NULL DEFAULT 0,
`next_lesson` VARCHAR NOT NULL DEFAULT -1,
PRIMARY KEY ( student_uid )
);
VARCHAR类型需要一个大小(在值周围使用引号是明智的),所以请尝试替换
`next_lesson` VARCHAR NOT NULL DEFAULT -1,
与
我能想到的两件事: <> >我不认为你可以用空缺省设置一个VARCHAR而不是NULL,MySQL可能认为空字符串与NULL相同。
下一课
VARCHAR非空默认值'-1'最后一个VARCHAR没有长度
next_lesson` VARCHAR NOT NULL DEFAULT -1,
应改为
`next_lesson` VARCHAR(255) NOT NULL DEFAULT -1,
请发送有帮助的错误消息。将完整的错误消息放在这里。感谢您的快速回答-这是VARCHAR上缺少的长度。代码现在可以工作:)@angle.King.47在这种情况下,它可以在没有引号的情况下工作,但是很好。我已经更新了我的答案。另外,在主键字段上设置默认值是没有意义的,因为它必须是唯一的。@dorkitude我很抱歉,当我点击submit时,我没有意识到你有相同的答案
`next_lesson` VARCHAR(255) NOT NULL DEFAULT -1,