SQL基础教程MICK版 --第四章总结

DML操作、事务的概念、性质、和表现形式

DML操作
SELECT
基本语法 SELECT 列名 FROM 表名
基础语法下的子句
WHERE 条件 对SELECT列名限制
GROUP BY 列名 作用:分组操作 注意要点:列名必须与SELECT 列名一致
HAVING 对分组进行限制,可以使用表中的任何列名
ORDER BY 排序操作
INSERT
基础语法 INSERT INTO 表名括号内列名 VALUES 括号内 与列名一致的值
copy形式的插入 INSERT INTO 表名括号内列名 SELECT 列名 FROM 表名
UPDATE
基础语法 UPDATE 表名 SET 列名 = 改变的值
搜索型更新 UPDATE 表名 SET 列名 = 改变的值 WHERE 条件
删除
DELETE
基础语法 DELETE FROM 表名 作用: 删除整张表的内容
搜索型删除 DELETE FROM 表名 WHERE 条件
TRUNCATE
TRUNCATE <表名>

DML操作之INSERT

/*
INSERT操作 用于插入数据
单行插入		 这里叫列清单				这里叫值清单
INSERT INTO 表名(列名,列名,...) VALUES (对应值);
*/
-- 栗子
INSERT INTO product(product_id,product_name,sale_price,purchase_price)
VALUES(0010,'T恤衫',1000,500);

-- 当然 也可省略列清单
INSERT INTO product VALUES (0010,'T恤衫',1000,500);

-- 如果有默认值的话 可以显式的写出 DEFAULT  或者 不写 (推荐写,为了可读性)
INSERT INTO  product VALUES(0010,'T恤衫',1000,DEFAULT);


/*
INSERT多行操作
方式1,写多次单行操作;
方式2,写到VALUES之后 写多个值清单 清单之间用逗号隔开;
方式3,从其他表中copy过来
		INSERT -- SELECT语句
*/

-- 栗子
-- 方式1
INSERT INTO productmargin VALUES (0011,'T恤衫1',1000,500);
INSERT INTO productmargin VALUES (0012,'T恤衫1',1000,500);
INSERT INTO productmargin VALUES (0013,'T恤衫1',1000,500);

-- 方式2
INSERT INTO productmargin VALUES 
(0011,'T恤衫1',1000,500),
(0012,'T恤衫1',1000,500),
(0014,'T恤衫1',1000,500);

-- 方式3
INSERT INTO productmargin 
SELECT *
FROM product;

DML操作之UPDATE

/*
UPDATE 用于更新数据
基本语法
UPDATE <表名>
SET <列名> = <表达式>;
*/
-- 栗子
UPDATE productmargin
SET purchase_price = 100;

/*
有选择的更新数据
加个 WHERE子句
*/
UPDATE productmargin
SET purchase_price = 100
WHERE	product_id = 0001;

DML操作之DELETE、TRUNCATE

/*
DELETE、TRUNCATE DROP删除操作区别
TRUNCATE 只能用于删除所有数据
DELETE  可以删除部分数据
DROP 	连表都给删了

关于TRUNCATE
语法  TRUNCATE <表名>;
*/
-- 栗子
TRUNCATE product;  -- 删除表中所有数据

/*
DELETE 操作
DELETE FROM 表名;   作用 删除表中内容
DELETE FROM 表名
WHERE  条件;    		作用 删除表中的部分数据
*/
-- 栗子1
DELETE FROM product;

-- 栗子2
DELETE FROM product 
WHERE product_id = 0001;

事务的概念,DBMS事务具有的ACID特性解释

1.事务的概念

​ 事务:是需要在同一个处理单元中执行的一系列更新处理的集合

2.ACID特性解释

​ 1)Atomicity 原子性 : 要么全部执行,要么全部不执行 (有点像JAVA的同步锁)

​ 2)Consistency一致性:事务中包含的处理要满足数据库提前设置的约束 (也称为完整性)

​ 3)Isolation 隔离性:事务之间互不干扰

​ 4)Durability持久性:保证数据不丢失等等。

事务的格式

/*
我用的是mysql数据库
START TRANSACTION;
	DML操作1,
	DML操作2,
		.
		.
		.
COMMIT/ROLLBACK;  -- 2选1,提交,回滚

提交,回滚区别是
提交,数据保存
回滚,数据不保存
*/
START TRANSACTION;
	DELETE FROM product 
	WHERE product_id = 0001;
COMMIT;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值