关于auto increment的写法?

方托马斯 2006-03-27 02:33:20
最近在学习mysql,有个问题想请教!
mysql v4.1.13,一个auto_increment的字段,在定义字段时这样定义:

`ID` int(6) NOT NULL auto_increment

但是用together 2006 for eclipse进行数据库建模的时候默认声成如下ddl却有问题?

CREATE TABLE `T_USER_WEBSITE`
(
`ID` INTEGER(5) NOT NULL,
`NAME` VARCHAR(50) NOT NULL,
……
PRIMARY KEY (`ID`)
)
AUTO_INCREMENT = ID
COMMENT = "用户网站登记表" ;

报错如下:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'ID' a
t line 24

我查了一下mysql的文档,这样写语法上是正确的,但是为什么不行?难道非要在字段后加auto_increment声明才行?求教!
...全文
186 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
方托马斯 2006-03-29
  • 打赏
  • 举报
回复
十分感谢hy2003fly!果然是你说的这样
hy2003fly 2006-03-27
  • 打赏
  • 举报
回复
呵呵,我知道错误了
CREATE TABLE `T_USER_WEBSITE`
(
`ID` INTEGER(5) NOT NULL,
`NAME` VARCHAR(50) NOT NULL,
……
PRIMARY KEY (`ID`)
)
AUTO_INCREMENT = 1-------------->这里应该是每次递增的值,而不是字段名
COMMENT = "用户网站登记表" ;
hy2003fly 2006-03-27
  • 打赏
  • 举报
回复
应该是一定要写在字段后面,我再查查看。
hy2003fly 2006-03-27
  • 打赏
  • 举报
回复
如果int设为auto_increment的话,这个字段就一定要设为primary key,否则会报错,而且一个表中只能有一个primary key.

56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧