MIS应用开发(T-SQL编程).ppt

MIS应用开发(T-SQL编程).ppt

ID:48030376

大小:1.12 MB

页数:30页

时间:2020-01-13

MIS应用开发(T-SQL编程).ppt_第1页
MIS应用开发(T-SQL编程).ppt_第2页
MIS应用开发(T-SQL编程).ppt_第3页
MIS应用开发(T-SQL编程).ppt_第4页
MIS应用开发(T-SQL编程).ppt_第5页
资源描述:

《MIS应用开发(T-SQL编程).ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、MIS应用开发(T-SQL编程)主要内容变量的使用逻辑控制语句事务处理视图操作存储过程触发器2变量的使用1和C语言一样,变量分为:局部变量:局部变量必须以标记@作为前缀,如@age局部变量的使用也是先声明,再赋值全局变量:全局变量必须以标记@@作为前缀,如@@version全局变量由系统定义和维护,我们只能读取,不能修改全局变量的值3变量的使用2例如:DECLARE@namevarchar(8)DECLARE@seatint声明局部变量DECLARE@变量名数据类型例如:SET@name=‘张三’SELECT@name=stuNameFROMstuInf

2、oWHEREstuNo=‘s25302’必须确保筛选出的记录只有1条或4变量的使用3/*--查找李文才的信息--*/DECLARE@namevarchar(8)--学员姓名SET@name='李文才'--使用SET赋值SELECT*FROMstuInfoWHEREstuName=@name/*--查找李文才的左右同桌--*/DECLARE@seatint--座位号SELECT@seat=stuSeatFROMstuInfo--使用SELECT赋值WHEREstuName=@nameSELECT*FROMstuInfoWHERE(stuSeat=@seat

3、+1)OR(stuSeat=@seat-1)GO5变量的使用4全局变量都使用两个@标志作为前缀变量含义@@ERROR最后一个T-SQL错误的错误号@@IDENTITY最后一次插入的标识值@@LANGUAGE当前使用的语言的名称@@MAX_CONNECTIONS可以创建的同时连接的最大数目@@ROWCOUNT受上一个SQL语句影响的行数@@SERVERNAME本地服务器的名称@@TRANSCOUNT当前连接打开的事务数@@VERSIONSQLServer的版本信息6逻辑控制语句1SQL中的IF-ELSE语句IF(条件)BEGIN语句1语句2……ENDELS

4、EBEGIN语句1;语句2;……ENDSQL中的WHILE语句WHILE(条件)BEGIN语句1语句2……BREAKENDCASEWHEN条件1THEN结果1WHEN条件2THEN结果2……ELSE其他结果END7逻辑控制语句28逻辑控制语句39逻辑控制语句410事务处理1事务(TRANSACTION)是作为单个逻辑工作单元执行的一系列操作这些操作作为一个整体一起向系统提交,要么都执行、要么都不执行事务是一个不可分割的工作逻辑单元转帐过程就是一个事务。它需要两条UPDATE语句来完成,这两条语句是一个整体,如果其中任一条出现错误,则整个转帐业务也应取消,

5、两个帐户中的余额应恢复到原来的数据,从而确保转帐前和转帐后的余额不变,即都是1001元。11事务处理2事务必须具备以下四个属性,简称ACID属性:原子性(Atomicity):事务是一个完整的操作。事务的各步操作是不可分的(原子的);要么都执行,要么都不执行一致性(Consistency):当事务完成时,数据必须处于一致状态隔离性(Isolation):对数据进行修改的所有并发事务是彼此隔离的,这表明事务必须是独立的,它不应以任何方式依赖于或影响其他事务永久性(Durability):事务完成后,它对数据库的修改被永久保持,事务日志能够保持事务的永久性1

6、2事务处理3T-SQL使用下列语句来管理事务:开始事务:BEGINTRANSACTION提交事务:COMMITTRANSACTION回滚(撤销)事务:ROLLBACKTRANSACTION一旦事务提交或回滚,则事务结束。判断某条语句执行是否出错:使用全局变量@@ERROR;@@ERROR只能判断当前一条T-SQL语句执行是否有错,为了判断事务中所有T-SQL语句是否有错,我们需要对错误进行累计;如:SET@errorSum=@errorSum+@@error13事务处理4……关键语句讲解………BEGINTRANSACTION/*--定义变量,用于累计事务

7、执行过程中的错误--*/DECLARE@errorSumINTSET@errorSum=0--初始化为0,即无错误/*--转帐:张三的帐户少1000元,李四的帐户多1000元*/UPDATEbankSETcurrentMoney=currentMoney-1000WHEREcustomerName='张三'SET@errorSum=@errorSum+@@errorUPDATEbankSETcurrentMoney=currentMoney+1000WHEREcustomerName='李四'SET@errorSum=@errorSum+@@error-

8、-累计是否有错误使用事务解决银行转帐问题开始事务(指定事务从此处开始,后续的T-

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。