DML(数据库数据的操作语言)&&DDL(数据库和表的操作语言)&&TCL(事物控制语言)

DML

插入

插入语句的语法:

# 方式一
insert into 表名(列名1,列名2,列名3...列名n)  values(1,,2...值n),(1,,2...值n)
#方式一支持多行或者一行插入
#方式二
insert into 表名
set 列名1=1,列名2=2,...列名n=值n
#只能单行插入

注意事项:
1.值的数据类型要和列的数据类型一致
2.注意可以为空的列的处理
3.列和值的顺序要对应

修改

修改语句的语法:

#单表的修改
update 表名
set=新值,=新值,...
where 筛选条件;
#多表的修改
#sql92语法:
update1 别名,2 别名
set=,...
where 连接条件
and 筛选条件;

#sql99语法:
update1 别名
inner|left|right join2 别名
on 连接条件
set=,...
where 筛选条件;

删除

删除语句的语法:

#方式一
#单表的删除
delete from 表名 where 筛选条件
#多表的删除
#sql92语法:
delete1的别名,2的别名
from1 别名,2 别名
where 连接条件
and 筛选条件;
#sql99语法:
delete1的别名,2的别名
from1 别名
inner|left|right join2 别名 on 连接条件
where 筛选条件;
#方式二
truncate table 表名;

方式一和方式二的区别:
1.delete 可以加where 条件,truncate不能加
2.truncate删除,效率高一丢丢
3.假如要删除的表中有自增长列,
如果用delete删除后,再插入数据,自增长列的值从断点开始,
而truncate删除后,再插入数据,自增长列的值从1开始。
4.truncate删除没有返回值,delete删除有返回值
5.truncate删除不能回滚,delete删除可以回滚.

DDL

创建: create
修改: alter
删除: drop

对库的操作

库的创建:

create database  if not exists 库名;
# if not exists 判断有无这个数据库

库的修改:

# 修改字符集
alter database 数据库名字 character set 字符集gbk;

库的删除:

 drop database  if exists 库名

对表的操作

表的创建

create table 表名(
	列名 列的类型(长度) 约束,
	列名 列的类型(长度) 约束,
	列名 列的类型(长度) 约束,
	.
	.
	.
)
# 长度和约束非必须

表的修改

# 修改表名
alter table 表名 rename to 新表名;
# 修改列名
alter table 表名 change  column  旧列名  新列名  数据类型
# 删除列
alter  table  表名   drop   column    列名
# 添加新的列
alter  table  表名   add   column    列名    数据类型

表的删除

 drop table  if exists 表名

表是复制

# 仅仅复制表的结构
create  table 表名 like 被复制的表名
#复制表的结构+数据
create  table 表名
select * from 被复制的表名
# 复制表的部分数据
#把查询全表变成要复制的字段
#复制部分结构
把复制部分数据的条件变为false

TCL

什么是事务?
一个或一组sql语句组成一个执行单元,这个执行单元要么全部执行,要么全部不执行。
事务的特征:
原子性:事物不可被再次分割,最小单位,要么都进行,要么都不进行。
一致性:操作前后数据总体一致
持久性:操作过后会永久改变数据库
隔离性:操作同一个数据库时,事物之间不会相互干扰
事务的执行步骤:
在这里插入图片描述
事务的并发问题:
在这里插入图片描述
事务的隔离级别:在这里插入图片描述

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>