IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> MySQL(DDL)讲解 -> 正文阅读

[大数据]MySQL(DDL)讲解

目录

在我们将数据定义语言(DDL)之前首先我们需要先了解SQL语言的分类:

而今天我们就来讲讲数据定义语言(DDL):

创建表:

修改表名:

修改列名:

修改列类型:

添加新列:

删除指定列:

删除表:

约束:

? ? ? ? 主键约束:

? ? ? ? 外键约束:

? ? ? ? 唯一约束:

? ? ? ? 非空约束:


在我们将数据定义语言(DDL)之前首先我们需要先了解SQL语言的分类:

数据查询语言(DQL):

  1. SELECT
  2. WHERE
  3. FROM
  4. ORDER BY
  5. HAVING

数据定义语言(DDL):

  1. CREATE 创建数据库对象
  2. ALTER 修改数据库对象
  3. DROP 删除数据库对象

数据操作语言(DML):

  1. INSERT 添加数据
  2. UPDATE 更新数据
  3. DELETE 删除数据

数据控制语言(DCL):

  1. GRANT:授予用户某种权限

  2. REVOKE:回收授予的某种权限

事务控制语言(TCL):? ?

  1. Commit:提交事务

  2. RollBack:回滚事务

  3. SavePoint:设置回滚点

而今天我们就来讲讲数据定义语言(DDL):

表:

创建表:

语法:

? ? ? ? CREATE TABLE ---创建表关键字????????

? ? ? ? 表名(列名 类型,列名 类型......);

例子:创建一个表名为employees,列名分别为:emp_id int,emp_name varchar(10);

create table employees(emp_id int,emp_name varchar(10));

修改表名:

语法:

? ? ? ? Alter table ---修改表关键字

? ? ? ? 旧表名 ---旧表名

? ? ? ? rename ---修改表名关键字

? ? ? ? 新表名 ---新表名

例子:将employees表名改为emp

Alter table employee rename emp;

删除表:

语法:

? ? ? ? drop table ---删除表关键字

? ? ? ? 表名 ---表名

例子:删除emp表

drop table emp;

列:

修改列名:

语法:

? ? ? ? Alter table ---修改表关键字

? ? ? ? 表名 ---表名

? ? ? ? change column ---修改列名关键字

? ? ? ? 旧列名 ---旧列名

? ? ? ? 新列名 类型 ---新列名 类型

例子:将emp表中的列emp_id改名为id

Alter table emp change column emp_id id int;

修改列类型:

语法:

? ? ? ? alter table ---修改表关键字

? ? ? ? 表名 ---表名

? ? ? ? modify ---修改列类型关键字

? ? ? ? 列名 新类型; ---列名 新类型

例子:将emp表中的列emp_name的varchar长度改为20

Alter table emp modify emp_name varchar(20);

添加新列:

语法:

? ? ? ? alter table ---修改表关键字

? ? ? ? 表名 ---表名

? ? ? ? add column ---添加列关键字

? ? ? ? 列名 类型; ---列名 类型

例子:添加列emp_age到emp表中,类型为smallint

Alter table emp add column emp_age smallint;

删除指定列:

语法:

? ? ? ? alter table ---修改表关键字

? ? ? ? 表名 ---表名

? ? ? ? drop column ---删除列关键字

? ? ? ? 列名; ---指定删除列的列名

例子:删除emp表中的列emp_age

Alter table emp drop column emp_age;

约束:

主键约束(Primary key):

? ? ? ? 添加主键:

语法:alter table 表名 add primary key(列名);

例子:给emp表中的emp_id添加主键约束

alter table emp add primary key(emp_id);

? ? ? ? 主键约束添加自动增长:

语法:alter table 表名 modify 主键列名 类型 auto_increment;

例子:将emp表中主键约束emp_id设置为自动增长

alter table emp modify emp_id int auto_increment;

? ? ? ? 删除主键(删除主键需要先删除自动增长):

删除自动增长语法:alter table 表名 modify 主键列名 类型;

例子:删除emp表中emp_id的自动增长

alter table emp modify emp_id int;

删除主键语法:alter table 表名 drop primary key;

例子:删除emp表中emp_id的主键约束

alter table emp drop primary key;

外键约束(Foreign key):

? ? ? ? 添加外键:

语法:alter table 表名 add constraint 约束名 foreign key(约束的列名) reference 参照的表名(参考的列名);

例子:现在有一个dept表,我们需要将emp表中的dept_id通过外键约束参照dept表中的id

alter table emp add constarint emp_fk foreign key(dept_id) reference dept(id);

? ? ? ? 删除外键:

语法:alter table 表名 drop foreign key 约束名;

例子:删除emp表中dept_id中的外键约束

alter table emp drop foreign key emp_fk;

唯一约束(Unique):

? ? ? ? 添加唯一:

语法:alter table 表名 add constraint 约束名 unique(列名);

例子:给emp表中的name添加唯一约束

alter table emp add constraint emp_uk unique(name);

? ? ? ? 删除唯一:

语法:alter table 表名 drop key 约束名;

例子:删除emp表中name的唯一约束

alter table emp drop key emp_uk;

非空约束(not null):

? ? ? ? 添加非空:

语法:alter table 表名 modify 列名 类型 not null;

例子:给emp表中的salary添加非空约束

alter table emp modify salary int not null;

? ? ? ? 删除非空:

语法:alter table 表名 modify 列名 类型 null;

例子:将emp表中salary删除非空约束

alter table modify salary int null;

总结:DDL其实很简单当我们创建表时用create,删除表时用drop,修改表(修改列名,修改列类型)时用alter,外键约束和唯一约束需要add constraint修饰,并且需要约束名

? ? ? ?

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-08-19 19:12:48  更:2022-08-19 19:13:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 10:12:41-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码