月白   发表于 2017-05-14 22:21:10

收藏 522 12

数据库三

一、简单子查询

1、名称解释:

子查询是一个嵌套在select、insert、update或delete语句或其他子查询中的查询

2、语法

select * from 表1 where 字段1 比较运算符(子查询)

3、执行过程

子查询先执行括号部分,然后执行其他部分

4、注意点

子查询和比较运算符联合使用,子查询返回的值最多一个


二、IN子查询

1、in:是否包含

select * from student where studentNo in(...)注意点:in 子查询返回值可以多个值

2、not in:不包含的(不在里面)

三、exist 子查询

查询相关关联语法

select * from student a where Exists(select student_id  from Result b where a.id=b.student_id)

1.if exists(条件):存在返回true,不存在返回false

2.if not exists(条件):存在返回false 不存在返回true

一、事务

1.解释

1)事务(transaction)是作为单个逻辑工作秩序的一系列操作

2)多个操作作为一个整体系统提交,要么都执行,要么都不执行

3)事务是一个不可分割的工作逻辑单位

2.特点

1)原子性:一个完整的操作,要么执行,要么不执行

2)一致性:事务完成时,数据处于一致状态

3)隔离性:并发事务之间隔离、独立

4)持久性:事务完成后,对数据库的修改永久保持

3.语法

1). begin transaction开始事务

2).commit transaction提交事务(对数据更新操作)

3).rollback transaction回滚事务(撤销对数据的操作)

4)例如:

declare @errorNum int --变量标识

set @errorNum=0

begin transaction     ---启动事务

-----执行操作语句1

set @errorNum+=@error --变量标识累加

-----执行操作语句2

set @errorNum+=@error --变量标识累加

if(@errorNum<>0)

rollback transaction --回滚

else

commit transaction   --提交

4.事务模式

a.显示模式

b.隐式模式

set implicit_transaction on off将隐式事务模式设置为关闭

c.默认模式


此帖被小晴 于2018年08月29日 21:44 进行了推荐操作
全部回复共12条
电梯直达
我要回复
加载中...
关闭
关闭
在线
咨询
QQ
交流群
App
下载
返回
顶部