如何修改数据库

简介:

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,如需转载请自行联系原作者
目录
相关文章
|
Linux Docker 异构计算
ModelScope问题之下载了官方镜像 但是启动不了如何解决
ModelScope镜像是指用于在ModelScope平台上创建和管理的容器镜像,这些镜像包含用于模型训练和推理的环境和依赖;本合集将说明如何使用ModelScope镜像以及管理镜像的技巧和注意事项。
484 0
|
4月前
|
人工智能 供应链 API
降本90%的秘密:开放银行API如何让电商分账系统“自动跑”?
在数字经济时代,开放银行与电商API的深度融合正在重塑支付清算与分账系统。通过标准化接口,银行服务与电商生态实现数据互通、流程自动化与资金高效流转,构建“银行即服务”(BaaS)新生态。本文从技术原理、协同场景、典型案例与未来趋势四方面,解析其在支付清算与分账系统中的创新应用与发展方向。
|
8月前
|
存储 运维 监控
阿里云飞天洛神云网络子系统“齐天”:超大规模云网络智能运维的“定海神针”
阿里云飞天洛神云网络子系统“齐天”:超大规模云网络智能运维的“定海神针”
321 3
|
存储 弹性计算 人工智能
阿里云Alex Chen:普惠计算服务,助力企业创新
本文整理自阿里云弹性计算产品线、存储产品线产品负责人陈起鲲(Alex Chen)在2024云栖大会「弹性计算专场-普惠计算服务,助力企业创新」中的分享。在演讲中,他分享了阿里云弹性计算,如何帮助千行百业的客户在多样化的业务环境和不同的计算能力需求下,实现了成本降低和效率提升的实际案例。同时,基于全面升级的CIPU2.0技术,弹性计算全线产品的性能、稳定性等关键指标得到了全面升级。此外,他还宣布了弹性计算包括:通用计算、加速计算和容器计算的全新产品家族,旨在加速AI与云计算的融合,推动客户的业务创新。
107207 10
|
C语言
【C语言】AscII码值详解
【C语言】AscII码值详解
2060 1
|
Web App开发 监控 Java
Electron V8排查问题之发现的内存泄漏问题如何解决
Electron V8排查问题之发现的内存泄漏问题如何解决
524 0
|
小程序
微信小程序App()方法与getApp()方法
微信小程序App()方法与getApp()方法
917 0
微信小程序App()方法与getApp()方法
|
存储 Java 关系型数据库
Spring Data与多数据源配置
Spring Data与多数据源配置
|
存储 JSON 关系型数据库
【mysql】—— 数据类型详解
【mysql】—— 数据类型详解
271 0
|
存储 Web App开发 编解码
音频基础知识 1
音频基础知识
1153 1