CREATE TABLE animals (
grp ENUM('fish','mammal','bird') NOT NULL,
id MEDIUMINT NOT NULL AUTO_INCREMENT,
name CHAR(30) NOT NULL,
PRIMARY KEY (grp,id)
);
提示错误:
Incorrect table definition;there can be only one auto column and it must be defined as a key!为啥会报这个错误呢?这个建表语句来自官方手册:
http://dev.mysql.com/doc/refman/5.1/zh/tutorial.html#multiple-tables
解决方案 »
- 请教高手!Mysql中的难题(用百度、google未搜到解决办法)
- 求一条去重的mysql语句
- 新手用MySQL Administrator错误,1045
- ◆请问“where f3 & 17 = 0”是啥意思啊?
- 请问游标定义之前能不能做其它删除、插入操作?二级游标能不能动态定义?
- 不包含某字符串用SQL查询怎么写
- MySQL不同服务器表的复制
- 如何用=来查询double,float型记录
- java连接不上mysql的问题
- 【MYSQL】ERROR 1045 (28000): Access denied for user 'root'@'localhost'
- 关于游标和临时表共同使用的问题,请各位大侠指点一二
- 求一个mysql语句
CREATE TABLE animals (
grp ENUM('fish','mammal','bird') NOT NULL,
id MEDIUMINT NOT NULL AUTO_INCREMENT,
name CHAR(30) NOT NULL,
PRIMARY KEY (grp,id)
) ENGINE=MyISAM;
innodb 是不支持这种方式的。
CREATE = "CREATE TABLE animals (grp ENUM('fish','mammal','bird') NOT NULL,
id MEDIUMINT NOT NULL AUTO_INCREMENT,name CHAR(30) NOT NULL,
PRIMARY KEY (grp,id)) ENGINE=MyISAM"
cur.execute(CREATE)
`grp` enum('fish','mammal','bird') NOT NULL,
`id` mediumint(9) NOT NULL AUTO_INCREMENT,
`name` char(30) NOT NULL,
PRIMARY KEY (`grp`,`id`),
KEY `id` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
it must be defined as a key