添加字段
ALTER TABLE table_name ADD field_name smallint default 1;
删除字段
ALTER TABLE table_name DROP field_name;
修改字段
alter table table_name change old_field new_field char(10) not null;
添加字段并设置主键
ALTER TABLE table_name ADD new_field_id int(5) unsigned default 0 not null auto_increment, ADD primary key (new_field_id);
加主关键字的索引
ALTER TABLE table_name ADD primary key(id);
加索引
ALTER TABLE table_name CHANGE depno depno int(5) not null;
ALTER TABLE table_name ADD INDEX 索引名 (字段名1[,字段名2 …]);
ALTER TABLE table_name ADD INDEX emp_name (name);
加唯一限制条件的索引
ALTER TABLE table_name ADD UNIQUE emp_name2(cardnumber);
删除某个索引
ALTER TABLE table_name DROP INDEX emp_name;
重命名列
ALTER TABLE table_name CHANGE field_name1 field_name2 integer;
重命名表
ALTER TABLE table_name rename new_table_name;
delete和truncate
使用delete并不会让数据库索引清零,因此如果想要清空数据库的内容,并且让索引清零,最好使用truncate:
TRUNCATE TABLE table_name;
如果使用delete清空数据库,也可以:
DELETE FROM table_name
set insert_id = 1;
truncate不需要创建索引,因此会比delete快。