查看数据表结构

使用SQL语句创建好数据表之后,可以查看表结构的定义,以确定表的定义是否正确。在MySQL中,查看表结构可以使用DESCRIBE 和 SHOW CREATE TABLE语句。

1、查看表基本结构语句DESCRIBE

DESCRIBE/DESC语句可以查看表的字段信息,其中包括:字段名。字段数据类型、是否为主键、是否有默认值。语法规则:

DESCRIBE 表名;

后者简写为:

DESC 表名;

各个字段的含义分别为:

NULL:表示该列是否可以存储NULL指

Key:表示该列是否已编制索引。PRI表示该列是表主键的一部分;UNI表示该列是UNIQUE索引的一部分;MUL表示在该列中某个给定值允许出现多次。

Default:表示该列是否有默认值。如果有,是多少。

Extra:表示可以获取的给定列有关的附加信息,例如AUTO_INCREMENT等。

2、查看表详细结构语句SHOW CREATE TABLE

SHOW CREATE TABLE 语句用来显示创建表时的CREATE TABLE语句,语法格式如下:

SHOW CREATE TABLE;

使用SHOW CREATE TABLE语句,不仅可以查看创建时候的详细语句,而且还可以查看存储引擎和字符编码

PS:

如果不佳“G”参数,显示的结果可能非常混乱,加上参数“G”之后,可使显示结果更加直观,易于观察。

修改数据表

1、修改表名

MySQL是通过ALTER TABLE语句来实现表名的修改的,具体的语法规则如下:

ALTER TABLE RENAME TO ;

其中TO为可选参数,使用与否均不影响结果。

范例:

将数据表department改名为dept

alter table department rename dept;

可以使用DESC查看修改前后两个表的结构,修改表名并不修改表结构,因此修改名称后的表和修改之前的表结构是完全相同的。

2、修改字段的数据类型

修改字段的数据类型就是把字段的数据类型转换成另一种数据类型。在MySQL中修改字段数据类型的语法规则如下:

ATTER TABLE MODIFY

范例:

将数据表department2中的name字段的数据类型有VARCHAR(22)修改成VARCHAR(30)。

alter table department2 modify name varchar(30);

3、修改字段名

MySQL中修改字段名的语法规则如下:

ALTER TABLE CHANGE

其中,“旧字段名”是指的修改前的字段名;“新字段名”指修改后的字段名;“新数据类型”指的是修改后的数据类型;如果不需要修改字段的数据类型,可以将新数据类型设置成与原来一样即可,但是数据类型不能为空。

范例:

将数据表department字段location改名为local,数据类型保持不变,SQL语句如下:

alter table department change location local varchar(50);

4、添加字段

添加字段语法格式如下:

ALTER TABLE ADD [约束条件] [FIRST | AFTER 已存在的字段名 ] ;

新字段名为需要添加的字段名称;“FIRST”为可选参数,其作用是将新添加的字段设置为表的第一个字段;“AFTER”为可选参数,其作用是将新添加的字段添加到指定的“已存在字段名”的后面。如果SQL语句中没有“FIRST”、“AFTER”这两个参数,则默认将这个字段放在数据表的最后列。

A、添加无完整性约束的字段

范例:在数据表department中添加一个没有添加完整性约束的INT类型的字段managerId(部门经理编号),SQL语句如下:

ALTER TABLE department ADD managerId INT(10);

B、添加有完整性约束的字段

范例:在数据表department中添加一个不能为空的VARCHAR(25)类型的字段column1,SQL语句如下:

ALTER TABLE department ADD column1 VARCHAR(12) NOT NULL;

C、在表的第一列添加一个字段

范例:

在数据表department中添加一个INT类型的字段column2,SQL语句如下

alter table department add column2 int(10) first;

D、在表的指定列之后添加一个字段

范例:

在数据表department中添加一个恶INT类型的字段column3在column2列之后。

alter table department add column3 int(10) after column2;

5、删除字段

删除字段是将数据表中的某个字段从表中删除,语法格式为:

ALTER TABLE DROP

范例:

删除数据表department中column2字段

alter table department drop column2;

6、修改字段的排列位置

语法格式:

ALTER TABLE MODIFY FIRST|AFTER

“字段1”值要修改位置的字段,“数据类型”值“字段1”的数据类型,“FIRST”为可选参数,指“字段1”修改为表的第一个字段,“AFTER字段2”指的是将“字段1”插入到“字段2”后面。

A、修改字段为表的第一个字段

范例:

将数据表department中的column1字段修改为表的第一个字段,SQL语句:

alter table department modify column1 varchar(12) first;

B、修改字段到表的指定列之后

范例:

将数据表department中的column1字段修改为表的managerId字段的后面。SQL语句如下:

alter table department modify column1 varchar(12) after managerId;

7、修改表的存储引擎

存储引擎是MySQL中的数据存储在文件或者内存中时采用的不同技术实现。MySQL中主要的存储引擎有:MyISAM、InnoDB、MEMORY、BDB、FEDERATED等。可以使用SHOW ENGINES;语句查看系统支持的存储引擎。

更改表的存储引擎的语法格式如下:

ALTER TABLE ENGINE=;

范例:

将数据表student的存储引擎修改为MyISAM。

8、删除表的外键约束

删除外键的语法:

ALTER TABLE DROP FOREIGN KEY

范例:

创建employee9

create table employee9

(

id INT(11) primary key ,

name varchar(20),

deptId INT(11),

salary float,

constraint fk_emp_dept foreign key(deptId) references department(id)

);

删除外键

alter table employee9 drop foreign key fk_emp_dept;

删除数据表

1、删除没有被关联的表

MySQL中,使用DROP TABLE可以一次删除一个或多个没有被其他表关联的数据表。语法格式:

DROP TABLE [IF EXISTS] 表1,表2,…表n;

2、删除被其他表关联的主表

数据表之间存在外键关联的情况,如果直接删除父表,结果会显示失败。原因是直接删除,将破坏表的参照完整性。

如果一定要删除,可以先删除与之关联的子表,在删除父表,只是这样同时删除了两个表中的数据。如果要将子表保留,这是要单独删除父表,只需将关联的表的外键约束条件取消,然后删除父表

范例:

创建dept表

create table dept(id INT(11) primary key ,name varchar(10),location varchar(30));

创建emp表

create table emp

(

id INT(10) primary key,

name varchar(20),

deptId INT(10),

constraint fk_emp_dept foreign key(deptId) references dept(id)

);

修改外键关联

alter table emp drop foreign key fk_emp_dept;

删除dept表

drop dept;

mysql自学完整_MySQL自学篇(三)_MySQL相关推荐

  1. include_fns.php_一步一步教你用PHP+MySql筹建网站 No.3 管理页面_mysql

    一步一步教你用PHP+mysql搭建网站 No.3 管理页面 先来看一下本篇blog将要介绍的内容. 我们的主页面已经搭建完成了,然后左边的navigation里面的大部分内容也都能点击了,只剩下&q ...

  2. mysql服务器查绑定的域名查_MySQL使用show status查看MySQL服务器状态信息

    MySQL使用show status查看MySQL服务器状态信息 这篇文章主要介绍了MySQL使用show status查看MySQL服务器状态信息,需要的朋友可以参考下 在LAMP架构的网站开发过程 ...

  3. 主机mysql密码修改_mysql密码修改方法_配置root密码_mysql 改数据库名_mysql忘记密码...

    windows平台下如何修改mysql数据库密码 先要声明一点,大部分情况下,修改MySQL是需要有mysql里的root权限的, 所以一般用户无法更改密码,除非请求管理员:名站互联http://ww ...

  4. mysql数据库误删后能恢复吗_MySQL 数据库误删除后的数据恢复

    MySQL 数据库误删除后的数据恢复 MySQL 数据库误删除后的数据恢复 在日常运维工作中,对于数据库的备份是至关重要的!数据库对于网站的重要性使得我们对 MySQL 数据库的管理不容有失! 然而是 ...

  5. 循序渐进自学爬虫(一): 基础篇2

    在开始本文的阅读之前,我希望你已经看过了 循序渐进自学爬虫(一): 基础篇1, 并且对相关的知识点进行了了解. 一个简单的不能再简单的爬虫 基本思路:利用程序来 获取网页,提取信息,保存数据. 获取网 ...

  6. 利用mysql上传木马_通过Mysql语句生成后门木马的方法_MySQL

    通过Mysql 的语句生成后门木马的方法! SELECT * FROM `vbb_strikes` WHERE 1 union select 2,3,0x3C3F7068702073797374656 ...

  7. python自学完整教程_python自学完整教程

    [教程介绍] 想学习一门编程语言,是不是必须考上大学的计臬机专业,才能真正学会呢? 其实不是,在我们身边,很多初中生,甚至国外不少小学生都能把编程学好,通过自学,很多人都能成为编程高手. python ...

  8. mysql上传木马_通过Mysql语句生成后门木马的方法_MySQL

    通过Mysql 的语句生成后门木马的方法! SELECT * FROM `vbb_strikes` WHERE 1 union select 2,3,0x3C3F7068702073797374656 ...

  9. 解决Excel导入mysql数据库时汉字乱码的问题_MySQL

    解决Excel导入mysql数据库时汉字乱码的问题_MySQL 1.用下面的命令查看数据库是否采用的是UTF-8编码 show variables like 'char%' 2.将Excel另存为cs ...

  10. mysql解压版下载安装教程_mysql 解压版安装配置方法教程

    1.首先,你要下载MySQL解压版,下载地址 虽然mysql都有8.0了,但这里我要安装的是mysql5.7,其他版本方法类似 2.解压安装包,根据自己的喜好选择路径,我选择的路径是D盘,因此MySQ ...

最新文章

  1. thinkcmf 去掉index.php,​ThinkCMF5.0如何修改入口文件 解决方法
  2. Maven提高篇系列之(五)——处理依赖冲突
  3. 基于libsvm的中文文本分类原型
  4. Java里的数组介绍
  5. 误删除了_msdcs.domain.com
  6. 常见Java面试题之JVM加载class文件的原理机制
  7. CVPR2021开源项目,带你傲游宇宙!
  8. 哪有什么岁月静好,不过是有人替你负重前行
  9. 完美实现类似QQ的自拍头像、上传头像功能!(Demo 源码)
  10. python selenium 等待页面加载完毕_python3 selenium 设置元素等待的三种方法
  11. MIT操作系统神课 - 6.828
  12. select标签,根据标签的文本值设置选中状态不生效的解决
  13. js 数组Array的常用方法 es3 es5 es6
  14. java将输入的阿拉伯数字金额转换为中文大写金额
  15. java读取src路径下的txt文件_python--文件操作(基本篇)
  16. 403forbiden解决
  17. 从零开始安装ubuntu22.04并搭建远程深度学习环境
  18. Apollo学习笔记(19)UKF
  19. 详解 P沟道mos管与N沟道mos管
  20. python-Opencv 图片锐化

热门文章

  1. Postman安装以及使用
  2. Nonebot QQ机器人插件一:实时天气获取
  3. 宏观经济判断指标-GDP、CPI、PPI、PMI
  4. 将火狐浏览器视频播放倍速设置为3倍速及其以上
  5. 零碎记录- spring security oauth2 资源服务器中设置放行路径
  6. imdisk虚拟光驱安装linux,imdisk虚拟磁盘驱动器如何加载iso文件?大白菜ImDisk加载iso文件教程...
  7. PMP-2.项目集、项目组合、项目运营和生命周期
  8. Web前端:一些用于Web开发的最佳精选IDE和代码编辑器
  9. Ubuntu中的截图工具
  10. Word弹窗提示“拼写或语法错误太多,无法继续显示”的处理办法