mysql——修改表名、修改字段名、修改字段数据类型、增加字段、删除字段、修改字段排列位置、修改存储引擎、删除表 (示例)
一、创建表和插入数据:
create table cr01 ( sx int(50),
mz varchar(50),
bz varchar(50)
); insert into cr01 ( sx,mz,bz ) values (1,'sww','sww01'); insert into cr01 values (2,'aww','aww02'); insert into cr01 values (3,'qww','qww03'),
(4,'eww','eww04'),
(5,'rww','rww05'); insert into cr01 ( sx,mz,bz ) values (6,'yww','yww06'),
(7,'uww','uww07'); select * from cr01;

==========================================================
二、查看表结构
查看表结构是指:查看数据库中已经存在的表的定义
1、查看表基本结构的语句:describe
describe语句可以查看表的基本定义:其中包括字段名、字段数据类型、是否为主键和默认值等;
describe语句的语法格式如下: describe 表名;
describe可以缩写为desc,格式如下: desc 表名;
describe cr01; 或者 desc cr01;

=======================================================
三、查看表的详细结构语句show create table
该语句可以查看表的字段名、字段的数据类型、完整性约束条件等信息。除此之外还可以查看表的默认的存储引擎和字符编码
show create table的语法格式如下: show create table 表名;
以整洁的格式显示的语法格式如下: show create table 表名 \G;
CREATE TABLE `cr01` (
`sx` int(50) DEFAULT NULL, `mz` varchar(50) DEFAULT NULL, `bz` varchar(50) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1

==================================================
四、修改表名
语法格式:alter table 旧表名 rename [to] 新表名;
举例:alter table example1 rename user;
注释:修改后example1表就不存在了,只存在名为user的新表,但是其内容是一致的,只是换了个名称
执行前: show tables;

执行:alter table cr01 rename to jss;

执行后:show tables;

注意:PS:为了不影响示例,执行下面的语句会把之前修改过的表名再改过来:alter table jss rename to cr01;
====================================================================================================
五、修改字段的数据类型
语法格式:alter table 表名 modify 属性名 数据类型; 注释:表名指所要修改数据类型的字段的表的名称;
属性名指:所要修改数据类型字段的名称;
数据类型指:修改后的新的数据类型
举例:alter table user modify name varchar(30);
修改前先desc user 修改后再desc user 就会发现name字段的数据类型改变了
执行前:describe cr01; ----------查看原来的表结构类型

执行:alter table cr01 modify mz varchar(40);

执行后:describe cr01; -----------------------------执行后,再次查看表结构,看是否改变

注意:PS,还原:alter table cr01 modify mz varchar(50);
===========================================================================================
六、修改字段名
语法格式:alter table 表名 change 旧属性名 新属性名 新数据类型;
举例:alter table example1 change stu_sex sex int(2);
注释:新数据类型指修改后的数据类型,如不需要修改,则将新数据类型设置成与原来一样
注意:修改整数类型时可能会影响表中的数据,特别注意的是字符类型的字段最好不要修改成整数类型或者浮点数类型
执行前:describe cr01;

执行:alter table cr01 change mz mzdd varchar(50);

执行后:describe cr01;

备注:PS:还原:alter table cr01 change mzdd mz varchar(50);
===========================================================================
七、增加字段
语法格式:alter table 表名 add 属性名1 数据类型 [完整性约束条件] [first | after 属性名2];
完整性约束条件:是可选参数,用来设置新增字段的完整性约束条件
first:是可选参数,其作用是将新增字段设置为表的第一个字的;
after:是可选参数,其作用是将新增字段添加到“属性名2”所指的字段后;
如果执行的SQL语句中没有“first”或者“after 属性名2”参数指定新增字段的位置,则新增字段默认为表的最后一个字段;
(1)增加无完整性约束条件的字段
举例:alter table user add phone varchar(20);
(2)增加有完整性约束条件的字段
举例:alter table user add age int(4) not null;
(3)表的第一个位置增加字段
举例:alter table user add num int(8) primary key first;
(4)表的指定位置之后增加字段
举例:alter table user add address varchar(20) not null after phone;
执行前:describe cr01;

执行:
alter table cr01 add js varchar(40) unique after mz;
alter table cr01 add jss varchar(50); ----------分别依次执行

执行后:describe cr01;(select * from cr01;)


注意:PS:下面删除新增的两个字段,以便还原。
===============================================================================
八、删除字段
删除字段是删除表中已经定义好的表中的某个字段,删除后其字段所属的数据都会被删除。
语法格式:alter table 表名 drop 属性名;
执行前:describe cr01;

执行:
alter table cr01 drop js;
alter table cr01 drop jss; -------------------分别依次执行;

执行后:describe cr01;

注意:PS:被还原为初始状态了
=============================================================
九、修改字段的排列位置
语法格式:alter table 表名 modify 属性名1 数据类型 first|after 属性名2;
(1)字段修改到第一个位置
举例:alter table user modify name varchar(20) first;
(2)字段修改到指定位置
举例:alter table user modify sex tinyint(1) after age;
执行前:describe cr01;

执行:alter table cr01 modify bz varchar(50) after sx;

执行后:describe cr01;

注意:PS:还原:alter table cr01 modify mz varchar(50) after sx;
=====================================================================
十、更改表的存储引擎
语法格式:alter table 表名 engine=存储引擎名;
此处不示例;
======================================================
十一、删除表的外键约束
**********************************************************************
十二、删除表
(1)删除没有被关联的普通表
语法格式:drop table 表名;
(2)删除被其它表关联的父表
删除子表的外键约束,再删除父表
执行前:show tables;

执行:drop table cr01;

执行后:show tables;

mysql——修改表名、修改字段名、修改字段数据类型、增加字段、删除字段、修改字段排列位置、修改存储引擎、删除表 (示例)的更多相关文章
- MySQL怎么用命令修改字段名
一.SQL MySQL怎么用命令修改字段名的 -- alter table 表名 change 旧属性 新属性 新的数据类型 ==>(可以不写) COMMENT '备注' ALTER TABLE ...
- 存储引擎和表的操作(mysql中的数据类型、完整性约束)
一.存储引擎 .概念 MySQL中的数据用各种不同的技术存储在文件(或者内存)中.这些技术中的每一种技术都使用不同的存储机制.索引技巧.锁定水平并且最终提供广泛的不同的功能和能力. 通过选择不同的技术 ...
- 浅谈MySql的存储引擎(表类型)
来源:http://www.cnblogs.com/lina1006/archive/2011/04/29/2032894.html 什么是MySql数据库 通常意义上,数据库也就是数据的集合,具体到 ...
- 浅谈MySql的存储引擎(表类型) (转)
什么是MySql数据库 通常意义上,数据库也就是数据的集合,具体到计算机上数据库可以是存储器上一些文件的集合或者一些内存数据的集合. 我们通常说的MySql数据库,sql server数据库等等其实是 ...
- (转)浅谈MySql的存储引擎(表类型)
原文:http://www.cnblogs.com/lina1006/archive/2011/04/29/2032894.html 什么是MySql数据库 通常意义上,数据库也就是数据的集合,具体到 ...
- mysql 库操作、存储引擎、表操作
阅读目录 库操作 存储引擎 什么是存储引擎 mysql支持的存储引擎 如何使用存储引擎 表操作 创建表 查看表结构 修改表ALTER TABLE 复制表 删除表 数据类型 表完整性约束 回到顶部 一. ...
- [MySQL数据库之表的详细操作:存储引擎、表介绍、表字段之数据类型]
[MySQL数据库之表的详细操作:存储引擎.表介绍.表字段之数据类型] 表的详细操作 存储引擎 mysql中建立的库======>文件夹 库中建立的表======>文件 用来存储数据的文件 ...
- Mysql不同存储引擎的表转换方法
Mysql不同存储引擎的表转换方法 1.Alter table直接修改表的存储引擎,但是这样会导致大量的系统开销,Mysql为此要执行一个就表向新表的逐行复制.在此期间,转换操作可能会占用服务器的所有 ...
- InnoDB存储引擎的表空间文件,重做日志文件
存储引擎文件:因为MySQL表存储引擎的关系,每个存储引擎都会有自己的文件来保存各种数据.这些存储引擎真正存储了数据和索引等数据. 表空间文件 InnoDB存储引擎在存储设计上模仿了Oracle,将存 ...
- MySQL数据库 存储引擎,创建表完整的语法,字段类型,约束条件
1.存储引擎 - 存储引擎是用于根据不同的机制处理不同的数据. - 查看mysql中所有引擎: - show engines; - myisam: 5.5以前老的版本使用的存储引擎 - blackho ...
随机推荐
- Cannot use JSX unless the '--jsx' flag is provided.
在tsx文件中加入html代码后,报错 Cannot use JSX unless the '--jsx' flag is provided. 解决方法: 在tsconfig.json中加入: &qu ...
- Java 实现在固定区间内随机生成整数
1.random.nextInt(num) public static void main(String args[]) { Random rdom = new Random(); int max = ...
- php+大视频文件上传+进度条
该项目核心就是文件分块上传.前后端要高度配合,需要双方约定好一些数据,才能完成大文件分块,我们在项目中要重点解决的以下问题. * 如何分片: * 如何合成一个文件: * 中断了从哪个分片开始. 如何分 ...
- HZOJ 20190719 那一天我们许下约定(dp+组合数)
这个题目背景真的是让我想起了当年... 不说了,言归正传,这题,一眼看去30分暴力还是很好拿的,但我因为考试时的心态问题没有处理好细节爆了零. 30分暴力的普遍思路的复杂度应该是$O(nmd)$的,但 ...
- 循环数组实现FIFO
涉及到数据通信的软件开发,不能回避的一点是,设计一个实用高效率的数据缓冲区,例如fifo.今天在做项目时候,需要缓存CAN总线上的数据,然后再需要的时候读这些数据.下边给出我自己设计的,采用循环数组实 ...
- DP&图论 DAY 3 下午 考试
Problem AProblem Description有一天 Tarzan 写了一篇文章,我们发现这文章当中一共出现了 n 个汉字,其中第 i 个汉字出现了 ai 次,因为 Tarzan 不希望文章 ...
- 《视觉SLAM十四讲》第1讲
目录 一 视觉SLAM 注:原创不易,转载请务必注明原作者和出处,感谢支持! 一 视觉SLAM 什么是视觉SLAM? SLAM是Simultaneous Localization and Mappin ...
- NGUI中UILabel使用url标签的一个bug
在NGUI里,UILabel控件可以支持一些简单功能的标签,使文本显示更丰富及实现类似超链接的功能.但是在使用的时候发现了NGUI3.5.9版本里存在着一个bug.不过还好修复这个bug也很简单. 在 ...
- Mac部分命令
报错: -bash: brew: command not found 解决: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercon ...
- 小D课堂 - 零基础入门SpringBoot2.X到实战_汇总
第1节零基础快速入门SpringBoot2.0 小D课堂 - 零基础入门SpringBoot2.X到实战_第1节零基础快速入门SpringBoot2.0_1.SpringBoot2.x课程介绍和高手系 ...