SQL编程技术.pptVIP

  1. 1、本文档共62页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SQL编程技术

第六章:SQL编程技术 6.1. SQL编程基础 6.2. 游标及游标的应用 6.3. 存储过程 6.4. 数据库触发器 6.5. 嵌入式SQL 6.1. SQL编程基础 作用: 通过创建存储过程和包来编写业务规则,通过创建触发器对象触发数据库事件,或者对SQL命令的执行增加逻辑控制 运用内存变量、分支、循环等程序设计方法 6.1.1 批处理 批处理是一个以“GO”结束的SQL语句集,这些语句是作为一个组来执行并一起提交的 “GO”是SQL Server 2000批处理的结束标志,不是SQL语句。 脚本是一系列顺序执行的批处理 6.1.1 批处理 说明: (1)如果—个批处理的所有语句正确执行,则整个批处理顺利提交;否则,批处理中,只要有一个语句错误.则整个批处理都不提交。 (2)有些语句不能组合在同一批处理中,例如,ALTER TABLE修改表和UPDATE更新表中的新列放在一个批处理中,将会出现错误。 将包含多个批处理的一个程序段存放在以后缀为“.SQL”的文件中,称为脚本文件。 批处理 批处理的特点 一次发给数据库服务器的所有的SQL语句,由GO作为结束标志。 编译成一个可执行单元——执行计划 执行时,每次执行计划中的一条语句 练习1 问题:下面的标识符是否符合SQL Server的命名规则: $table @table# _var_1 order details order 常量和变量 常量: 字符串常量 数值常量 日期常量 uniqueidentifier常量 注:引用数值常量不用单引号,引用日期、字符串常量时需要加单引号 变量 变量:在程序运行过程中其值是变化的量 局部变量(以@开头;使用DECLARE语句声明) 【问题】 DECLARE @var1 int,@var2 money SELECT @var1=50,@var2=$29.95 SELECT @var1,@var2 全局变量(也称配置函数,是系统定义的变量,以@@开头;用户只能使用) 例如:@@version @@rowcount 练习2 问题: 编写程序计算两个整数之和 运算符 算术运算符(+、-、*、/、%) 比较运算符(=、、、=、=、、!=、!、!) 逻辑运算符(NOT、OR、AND、IN、LIKE、BETWEEN、EXISTS) 字符串连接运算符(+) 赋值运算符(=) 位运算符(、|、^、~) 常用函数 思考: 如何将一个数字转换为一个字符串? 如何截取字符串? 如何根据一个人的出生年月,使用日期函数计算年龄? 如何对一个数进行取整?进行四舍五入? 流控语句 【问题】如何用SQL语句编程实现:求1+2+3+4+…+100=? 编程思想: 代码: 分析:WHILE、BEGIN…END、IF…ELSE…、GOTO的使用用法 其他流控语句的使用用法 BRAEK:在循环语句中,用于退出本层循环 CONTINUE:在循环语句中,结束本次循环,重新转到下一次循环条件的判断 练习3 编写程序,计算n!(n=10),并将结果显示出来 流控语句 CASE语句(开关语句) 【练习4】在Xk数据库中显示班级编码、班级名称和系部名称(当系部编码为01时,显示系部名称为“计算机系”;当系部编码为02时,显示系部名称为“建筑系”;当系部编码为03时,显示系部名称为“旅游系”),要求使用CASE语句 流控语句 WAITFOR语句: WAITFOR DELAY ‘time’——延迟一段时间 WAITFOR TIME ‘time’——等待到一个时刻 2. 游标及游标的应用 问题 问题 在银行等重要交易中,要使一组SQL语句同时执行或撤消,如何做? 要对查询结果进行一行行的操作,如何做到? 事务概述 事务是作为单个逻辑工作单元执行的一系列操作。 思考:事务和批处理的区别? 事务的属性(ACID) 原子性:原子工作单元 一致性:保证数据的一致性 隔离性:并发事务之间所做的修改要隔离 并发操作:几个用户程序同时读写一个数据的情况 持久性:对系统的影响要持久 简单事务编程 格式: BEGIN TRANSACTION COMMIT TRANSACTION ROLLBACK TRANSACTION 【问题】简单的事务提交和回滚 说明:如果没有明确给出BEGIN TRANSACTION语句,则SQL Server是将每个SQL语句都当成一个事务进行执行 事务的嵌套 嵌套事务只有在提交了最外层的事务后,数据才执行永久修改 嵌套事务时,ROLLBACK语句只能将所有内层事务回滚到最外层的BEGIN TRANSACTION语句 封锁 利用封锁技术可以有效地保证数据的一致性 封锁粒度:可以锁定在行、列、表、数据库等不同的单元上 SQL Ser

文档评论(0)

ligennv1314 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档