欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

建表遇到的问题

程序员文章站 2022-07-14 15:33:31
...

这两天一个小项目,用EZDML建模后生成,发现了些许问题,有的问题产生,但是建表没有失败,有的失败了,这里说几个。

1.ID字段问题

alter  table `system_user` change `Id` `Id` NUMERIC(10) auto_increment primary key not null
Incorrect column specifier for column 'Id'

因为设计的时候,是规定id为整数,这里生成的语句是numeric,在数据库中自动切换成int,无影响。但是自己写的不能写NUMERIC.

我错了,真的有个数据类型decimal

第二行主要解决是说,只有int类型才能自增。

2.中文缺省值的问题

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 '用户 not null' at line 2

这个的话,就在中文两边加上''

3.缺省值是关键词情况

[Err] 1064 - 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 'all not null comment '消息推送的对象 默认群发,不然根据里面的' at line 11

这个改掉缺省值就好了。

4.外键相关问题

外键调了我半天,因为表结构器有的是decimal(10),有的是int(11),会有添加失败的情况,但是还是气啊。


下次换个设计器吧。。。。

--------------------------------------------------------

接下来是修改时遇到的问题:

ALTER TABLE causes auto_increment resequencing, resulting in duplicate entry ’1′ for key  (2011-09-22 16:57:45)
当我用MySql尝试修改已有记录的mysql数据表的主键为自动增长时,报出以下错误
ALTER TABLE causes auto_increment resequencing, resulting in duplicate entry ’1′ for key ‘PRIMARY’
解决方法:
第1步:将主键字段值为0的那条记录值改为其他大于0且不重复的任意数
第2步:修改主键字段为auto_increment

第3步:把刚才修改过的那条记录的值还原

转自:http://blog.sina.com.cn/s/blog_625977810100xwfi.html

相关标签: mysql