总结一下对mysql表结构的修改操作,包括对字段及索引的修改操作:
添加字段:
alter table `user_movement_log` Add column GatewayId int not null default 0 AFTER `Regionid` (在哪个字段后面添加)
删除字段:
alter table `user_movement_log` drop column Gatewayid
调整字段顺序:
ALTER TABLE `user_movement_log` CHANGE `GatewayId` `GatewayId` int not null default 0 AFTER RegionID
//主键
alter table tabelname add new_field_id int(5) unsigned default 0 not null auto_increment ,add primary key (new_field_id);
//增加一个新列
alter table t2 add newfield timestamp; (简单语法,只指定新添字段newfield 类型为timestamp)
alter table infos add newfield tinyint not null default ‘0’; (同时指定字段null属性、默认值)
//删除列
alter table t2 drop column c; (删除列c)
//重命名列
alter table t1 change a b integer; (把列a改名为b,注意要指定列类型)
//改变列的类型
alter table t1 change b b bigint not null; (把列a改名为b,指定列类型及null属性)
alter table infos change list list tinyint not null default ‘0’;
//重命名表
alter table t1 rename t2;
加索引
mysql> alter table tablename change depno depno int(5) not null;
mysql> alter table tablename add index 索引名 (字段名1[,字段名2 …]);
mysql> alter table tablename add index emp_name (name);
加主关键字的索引
mysql> alter table tablename add primary key(id);
加唯一限制条件的索引
mysql> alter table tablename add unique emp_name2(cardnumber);
删除某个索引
mysql>alter table tablename drop index emp_name;
修改表:
增加字段:
mysql> ALTER TABLE table_name ADD field_name field_type;
修改原字段名称及类型:
mysql> ALTER TABLE table_name CHANGE old_field_name new_field_name field_type;
删除字段:
mysql> ALTER TABLE table_name DROP field_name;
延伸阅读
- MYSQL EXPLAIN语句的extended 选项
- mysql分表
- MySQL内置函数:IP地址点分式与数字转换函数(INET_ATON/INET_NTOA)
- 全球IP地址分配表_MySQL版_by_fengyqf100131_ip.sql.zip
- MySQL联表查询详解/超详细mysql left join,right join,inner join用法分析比较
- 把mysql中的表数据导到csv文件
- mysql中 text和blob字段类型比较区别
- MySQL中的ROWNUM的实现/row_number mysql
- mysql对大表执行update速度慢时,试试改用insert可能会有意想不到的发现
- 简单命令对mysql数据库的备份与还原
- 索引的优点和缺点
- mysql 索引管理:SHOW INDEX语法 查看索引状态
- MySQL SHOW INDEX语法 查看索引状态(语法)
- MySQL索引详解,及MySQL高效运行优化
- MYSQL创建、删除、索引和更改表语句详解
0 条评论。