DML与DDL之中的重点知识:

DML:

一、数据操作语言

        插入:insert 修改:update 删除 delect

(1)一个value和set插入方式的比较*:

1、value支持插入多行 set不支持

2、value支持子查询 set不支持

修改中的级连更新

(1)语法


sql92语法:(只支持内连接)
update 表1 别名,表2 别名
set 列=值,...
where 连接条件
and 筛选条件;

sql99语法:(内 左外 右外)
update 表1 别名
inner|left|right join 表2 别名
on 连接条件
set 列=值,...
where 筛选条件;

删除中的多表连接删除

sql92语法: 支持 内连接
delete 表1的别名,表2的别名 【要删除那个表的信息 写那个表】
from 表1 别名,表2 别名
where 连接条件
and 筛选条件;

sql99语法: 内连接(存在 取交集 ) 左外 右外连接

delete 表1的别名,表2的别名
from 表1 别名
inner|left|right join 表2 别名 on 连接条件
where 筛选条件;

(2)truncate 删除表中的记录与delete删除表中的记录的区别

truncate语法:truncate table 表名;

1.delete 可以加where 条件,truncate不能加
2.truncate删除,效率高一丢丢  没有过滤的选择 
3.假如要删除的表中有自增长列(特殊的字段),
如果用delete删除后,再插入数据,自增长列的值从断点(从删除前的最后一个位置)开始,
而truncate删除后,再插入数据,自增长列的值从1开始。
4.truncate删除没有返回值(不会提示 有几行删除),delete(能够返回有几行删除)删除有返回值
5.truncate删除不能回滚,delete删除可以回滚==》事务知识点.

DDL

数据定义语言:

库与表:都涉及 创建create 修改alter 删除drop

在库与表的创建删除中涉及一个容错性的判断

容错性:只支持库和表的管理
IF EXISTS
IF not EXISTS

(1)

#2.表的修改(添加一列也是修改)
#语法
alter table 表名 add|drop|modify|change column 列名 【列类型 约束】至于加不加根据需求而定;

表的复制几种方式分别是干啥 :

1、like:仅仅复制表的结构:语法 create table 表名 like 要复制的表

2、子查询:复制表的结构+数据:create table 表名 +子查询

3、子查询+筛选条件:只复制部分数据:create table 表名 +子查询+筛选条件

4、仅仅复制复制字段:不要数据 就把筛选条件搞成水都不满足!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值