连接、事务

连接:大多数查询都需要多个表中的信息。连接是一种关系数据库操作,它从两个表中检索数据,根据连接规范匹配它们的行,最终生成一个表。连接有不同的类型,每个连接都是一个二元操作,即把一个表连接到另一个表上,这两个表可以相同,因为表可以和自身连接其来。

内连接基本语法:

  select    <select  list>

  from    left-table  INNER  JOIN  right-table

  ON     <join  specification>

INNER JOIN 是一个二元操作;ON关键字表示连接规范的开始,连接规范可以包含能用于where子句的任何条件。

外连接:有三种类型:左外连接、右外连接、全外连接。

其他连接:SQL标准还提供了FULL、OUTER JOIN、UNION JOIN、CROSS JOIN以及NATURAL  JOIN。

full  outer  join是left和right outer连接的组合,它检索两个表中的所有行。

事务:事务是作为单个逻辑工作单元执行的一系列操作,这些操作作为一个整体一起向系统提交,要么都执行要么都不执行。

事务是一个不可分割的工作逻辑单元。

事务的特性:简称ACID属性。

原子性(Atomicity):事务是一个完整的操作,事务的各步操作是不可分的(原子的);要么都执行,要么都不执行。

一致性(Consistency):当事务完成时,数据必须处于一致状态。

隔离性(Isolation):对数据进行修改的所有并发事务是彼此隔离的,这表明事务必须是独立的,它不应以任何方式依赖于或影响其他事务。

永久性(Durability):事务完成后,它对数据库的修改被永久性保持,事务日志能够保持事务的永久性。

T-SQL使用下列语句来管理事务:

开始事务:Begin transaction

提交事务:Commit transaction

撤销事务:rollback   transaction

一旦事务提交或回滚,则事务结束。

事务的分类:

显示事务:用Begin transaction明确指定事务的开始,这是最常用的事务类型。

隐性事务:通过设置SET IMPLICIT_TRANSACTIONS. ON语句将隐性事务模式设置为打开,下一个语句自动启动一个新事务,当该事务完成时,再下一个T-SQL语句又将启动一个新事务。

自动提交事务:这是SQL Server的默认模式,它将有条单独的T-SQL语句视为一个事务,如果成功执行,则自动提交,如果错误则自动回滚。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值