如何修改数据库

简介:

1)修改表明

alter table <old tablename> rename <net tablename>;

范例

1
alter  table  t1 rename t4;

2)修改字段的数据类型

alter table <table name> modify <column name> <data type>;

当表中已有数据是,慎用(特表数据量大)。

1
alter  table  t1  modify  name  varchar (20);

3)修改字段名

当表中已有数据是,慎用(特表数据量大)。

alter table <table name> change <old column name> <new column name>

1
alter  table  t1 change  name  uname  varchar (20);

4)添加字段

当表中数据量很大时,慎用

alter table <table name> add <new column name> <new data type> [check] [first|after old_column_name]

1
2
3
alter  table  t1  add  `location`  varchar (20)  -- 字段增加到最后列
alter  table  t1  add  `age`  int  not  null  after  uname;  -- uname后面增加
alter  table  t1  add  `colnum `  int  first -- 第一列增加一个字段

5)删除字段

alter table <table name> drop <column name>;

当表中数据量很大时,慎用

1
alter  table  t1  drop  location;

6)修改字段排列位置

alter table <table name> modify <column name1> <data type> first|after <column name2>

当表中数据量很大时,慎用 

1
2
alter  table  t1  modify  name  varchar (20)  after  uid;
alter  table  t1  modify  location  varchar (30)  after  uname;

7)更改表的存储引擎

alter table <table name> engine=<new engine>;

当表中的数据量很大时,慎用

1
2
alter  table  t1 engine=innodb;
alter  table  t1 engine=MYISAM;

8)删除标的外键约束

alter table <table name> drop foreign key <foreign key name>;

删除所有的外键之后,才能删除对应的主键所以在的表。

1
2
3
4
5
drop  table  t2;
ERROR 1217 (3000):Cannot  delete  or  update  a parent row: a  foreign  key  constraint  fails;
alter  table  t3  drop  foreign  key  fk_1;
show  create  table  t3\G;
drop  table  t2;

总结:

1)关系型数据库中突出强调利用数据之间的关系设计表,用表作为数据容器。

2)表设计要综合考虑多种因素,参考三范式合理规划。

3)存储引擎作用于表,不是作用于库。

4)大表慎用alter语句。










本文转自 tanzhenchao 51CTO博客,原文链接:http://blog.51cto.com/cmdschool/1732727,如需转载请自行联系原作者
目录
相关文章
|
6月前
|
关系型数据库 MySQL 数据库
如何快速创建一个数据库
如何快速创建一个数据库
如何快速创建一个数据库
|
7月前
|
SQL 数据库
数据库修改表
数据库修改表
54 0
|
SQL 关系型数据库 MySQL
数据库相关操作
数据库相关操作
|
SQL 数据库 数据库管理
数据库|数据库之定义删除修改基本表
数据库|数据库之定义删除修改基本表
142 1
|
SQL 数据库
【数据库报错】
【数据库报错】
111 0
【数据库报错】
|
SQL 缓存 关系型数据库
QxOrm操作数据库
我们在QT应用开发专栏中对数据库操作做了基本的介绍,很多程序员对于数据库的语法并不是很熟悉,我们就需要使用ORM库来弥补该方面的不足
261 0
|
SQL 数据库
数据库的创建
数据库的创建
|
存储 SQL 缓存
【机房重构】之数据库的操作
【机房重构】之数据库的操作
137 0
|
SQL 数据库
数据库不一致时启动数据库
本文介绍数据库不一致时如何启动数据库。
|
SQL NoSQL Oracle
【数据库】实际项目上,用到的数据库,涨涨小知识
说到数据库,本篇文章来简单总结下实际项目上用到的数据库
76 0