《SQLServer7编程技术内 幕(九)》中学生教育文学丛书.pdfVIP

《SQLServer7编程技术内 幕(九)》中学生教育文学丛书.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
下载 第9章 动 态 执 行 不考虑SQL Server 7 中的那些显著变化,下面这部分没有改变: T- S Q L版本的功能和以前 一样强大。使用 T- S Q L ,程序设计者可以构造出具有很高的可扩展性的存储过程,从而帮助 开发应用程序。本章集中讨论了开发动态 T- S Q L语句的过程步骤和它们在存储过程中的实现。 如果用户对动态执行不熟悉,没有关系。本章将介绍什么是动态执行以及对用户有何帮助。 然后介绍如何创建并运行一个可动态执行的 T- S Q L 串,以及如何使用游标来提供更大的灵活性。 本章最后总结了动态执行的优缺点,分析了用户为什么愿意或者不愿意使用动态执行。 9.1 什么是动态执行 在最近的一个工程项目中,笔者被请去作一些系统维护工作,笔者发现原来的开发小组 创建了5 0 0多个存储过程。这些存储过程的绝大部分工作只是检索一个简单的结果集。笔者想 到的第一件事便是这个小组把工程的复杂性全推给了这些维护人员 ( 比如笔者本人) 。检索一个 简单结果集的存储过程,完全可以使用一个简单可扩展的动态执行的存储过程来实现 ( 见第7 章“存储过程”,可以了解关于存储过程的更多信息 ) 。这听起来好象很离谱,但T- S Q L 的动态 执行(dynamic execution)确实给开发者提供这种功能。 动态执行使用户可以使用相同的 T- S Q L语句来执行不同的查询。如何实现呢?通过使用变 量和T-SQL EXEC(EXECUTE)语句,用户可以创建可扩展和重用的 T- S Q L 。 提示 用户可以使用E X E C关键字代替E X E C U T E 关键字来获得相同的结果。一般使 用E X E C ,显然它包含的字符数要少一些。 9.1.1 合法的动态执行语法 用户使用E X E C语句可能只用来激活标准的、远程的和扩展的存储过程。但 E X E C语句还 有更多的功能要介绍给用户。 E X E C语句可以运行包含在单引号内部的,一个字符串变量中, 或者二者的结合的合法 T- S Q L语句。不论是运行 S E L E C T语句还是运行一个动作查询,动态执 行可以灵活地让用户在几个查询中使用相同的 S Q L语句。程序清单 9 - 1 显示了执行一个带 E X E C语句的S Q L串的语法。 程序清单9-1 T- S Q L动态执行的语法 EXEC ({@chvTSQLString T-SQL String} [ + {@chvTSQLString T-SQL String}...]) @ c h v T S Q L S t r i n g表示一个字符串变量的名称。该变量可以是 VA R C H A R 或C H A R数据类 型,并且可以包含多个字符串,多个字符串在结合使用时代表一个合法的 T- S Q L语句。 T-SQL String 表示包含合法 T- S Q L语句的一个字符串。传递给 E X E C语的字符串必须是用 单引号括起来的。如果有多个字符串被传递,这些字符串必须使用空格符隔开,并且使用加 ( +)操作将它们结合起来。 156使用第一部分 高级编程技术 下载 另外,两种类型的参数 (单引号括起来的字符串和字符串变量 )都可以结合在一起并传递给 E X E C语句,下面是一个简单的 E X E C语句。 EXEC SELECT * FROM authors 注意 在E X E C 串中使用的参数必须是字符类型数据。所有的数值型数据必须在使用 E X E C语句之前转换为字符类型,或者 E X E C语句本身使用C O N V E RT 函数进行转换。 另外,任何函数可以作为参数传递给 T- S Q L语句,但其前提条件是在 E X E C 串中的函 数结果参数能够转换成字符型数据。 9.1.2 在何处使用动态执行 当和存储过程一起使用时,动态 S Q L执行可以使存储过程根据传递给它的不同参数值, 执行不同的 S Q L语句。用户可以使用动态执行,例如简单地通过改变

文档评论(0)

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

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

版权声明书
用户编号:8135026137000003

1亿VIP精品文档

相关文档