1、primary key == 主键 等价于 唯一 (UNIQUE) 且 非空 (NOT NULL)
2、因为 Mysql 里面的自增列, 必须要依赖一个 主键 或者 唯一的键。
3、所以你的 SQL 里面要有一个
4、PRIMARY KEY ( `id` )
5、如果不加 PRIMARY KEY ( `id` ) 的话, 结果将像下面这个样子:
6、mysql> CREATE TABLE tab (
7、-> id INT AUTO_INCREMENT,
8、-> val VARCHAR(10)
9、-> );
10、ERROR 1075 (42000): Incorrect table definition; there can be only one auto column and it must be defined as a key
11、ENGINE = InnoDB DEFAULT CHARSET = gbk AUTO_INCREMENT =1;
12、这行语句, 设置了3个表的属性
13、ENGINE = InnoDB 是设置表的引擎。 innoDB 引擎是比较新的, 支持外键 与 事务处理等特性。
14、CHARSET = gbk 是字符集
15、AUTO_INCREMENT =1 是那个 自增的 ID , 起始数值是 1
16、我把这样的表单写入数据库以后 留言板上的内容(中文)添加上去显示是“??”。
17、我查看结构的时候确实是gbk_chinese_ci 了
18、这个要调查一下,你的数据,是怎么插入的。
19、虽然你的数据库表的 字符编码, 是 gbk 了。
20、但是如果你的 数据,是通过 网页插入的, 而网页的编码是 utf8 之类的话。
21、那么最后保存的数据, 就可能是 ?? 了。
【#primarykey是什么意思"#】到此分享完毕,希望对大家有所帮助。