0

我在这里有点困惑,我的语法有什么问题?

CREATE TABLE `users` (
`userId` int(7) NOT NULL AUTO_INCREMENT,
`firstName` varchar(30) NOT NULL,
`lastName` varchar(30) NOT NULL,
`gender` varchar(1) NOT NULL,
`birthday` datetime NOT NULL,
`city` varchar(20) NOT NULL,
`province` varchar(20) NOT NULL,
`postalCode` varchar(6) NOT NULL,
`country` varchar(20) NOT NULL,
`email` varchar(30) NOT NULL,
`password` varchar(32) NOT NULL,
`bio` text NOT NULL,
`active` int(1) NOT NULL DEFAULT(0),
PRIMARY KEY (`userId`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

这是从 SQL 导出自动生成的。它给出了以下错误:

#1064- 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以userId在第 14 行的 '(0), PRIMARY KEY ( ) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCR'附近使用正确的语法

4

1 回答 1

4

指定默认值是错误的。不需要大括号

代替

`active` int(1) NOT NULL DEFAULT (0),

 `active` int(1) NOT NULL DEFAULT 0,
于 2013-07-04T13:02:36.673 回答