1、表的创建CREATE TABLE IF NOT EXISTS
CREATE TABLE IF NOT EXISTS a_table
(
char(50) NOT NULL AUTO_INCREAMENT DEFAULT 'a',
……
PRIMARY KEY(f1,f2)
)ENGINE=InnoDB;
1)主键primary_key:可以是联合主键:
PRIMARY KEY(order_num, order_item)
2)自增auto_increment:只能由1个,且必须被索引(一般是使之成为主键)
自增的值这样获得:select last_insert_id()
3)默认值 DEFAULT 1
默认值值支持常量,不支持函数
用默认值胜过用NULL(更加明确)
4)引擎类型 ENGINE=InnoDB
- InnoDB适合事务处理,但不支持全文本搜索
- MyISAM支持全文本搜索,性能极高,但不支持事务处理
- MEMORY在功能上等同MyISAM,但由于数据存储在内存而不是磁盘中,速度快,适合临时表。
引擎可以混用,这个表用这一个那个表用另一个,但使用这个引擎的表不能引用不同引擎的表的字段做外键——外键不能跨引擎,这是很大的缺陷。
2、更改表ALTER TABLE
ALTER TABLE……
- DROP 字段
- ADD 字段
- ADD CONSTRAINT fk_tb1_tb2 FOREIGN KEY (xx) REFERENCES tb2 (xx) #给tb1增加外键fk,作为到tb2某字段的引用
3、丢弃表DROP TABLE
4、重命名表RENAME TABLE
RENAME TABLE XX TO YY;