77范文网 - 专业文章范例文档资料分享平台

第6章 T-SQL编程与应用(3)

来源:网络收集 时间:2020-06-19 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

SELECT @StringTest select char(@StringTest)

(3)LEFT()

返回从字符串左边开始指定个数的字符。

DECLARE @StringTest char(10) SET @StringTest='Robin ' SELECT LEFT(@StringTest,3)

(4)LOWER()

将大写字符数据转换为小写字符数据后返回字符表达式

DECLARE @StringTest char(10) SET @StringTest='Robin '

SELECT LOWER(LEFT(@StringTest,3))

(5)LTRIM()

删除起始空格后返回字符表达式

DECLARE @StringTest char(10) SET @StringTest=' Robin'

SELECT 'Start-'+LTRIM(@StringTest),'Start-'+@StringTest

(6)RIGHT()

返回字符串中从右边开始指定个数的 integer_expression 字符。

DECLARE @StringTest char(10) SET @StringTest=' Robin' SELECT RIGHT(@StringTest,3)

(7)RTRIM()

截断所有尾随空格后返回一个字符串。

DECLARE @StringTest char(10) SET @StringTest='Robin'

SELECT @StringTest+'-End',RTRIM(@StringTest)+'-End'

(8)STR()

由数字数据转换来的字符数据。

SELECT 'A'+82

SELECT 'A'+'82'

SELECT 'A'+STR(82)

SELECT 'A'+LTRIM(STR(82))

(9)SUBSTRING() 求子串函数

DECLARE @StringTest char(10) SET @StringTest='Robin '

SELECT SUBSTRING(@StringTest,3,LEN(@StringTest))

(10)UPPER()

返回将小写字符数据转换为大写的字符表达式。

DECLARE @StringTest char(10) SET @StringTest='Robin ' SELECT UPPER(@StringTest)

4. 空值置换函数ISNULL(空值,指定的空值),用指定的值代替空值。 USE Library GO

SELECT Lendnum,ISNULL(Lendnum,0) AS 空值置换 FROM Reader

WHERE ISNULL(Lendnum,0)=0 查询结果:

6.2.5 运算符

SQL Server 2005的运算符和其他高级语言类似,用于指定要在一个或多个表达式中执行的操作,将变量、常量和函数连接起来。

优先级 1 2 3 4 5 6 7 8 9 运算符类别 一元运算符 算术运算符 所包含运算符 +(正)、-(负)、~(取反) *(乖)、/(除)、%(取模) =(等于)、>(大于)、>=(大于等于)、<(小于)、<=(小于等于)、<>( 或!=不等于)、!<(不小于)、!>(不大于) &(位与)、|(位或)、^(位异或) not(非) and(与) all(所有)、any(任意一个)、between(两者之间)、exists(存在)、in(在范围内)、like(匹配)、or(或)、some(任意一个) =(赋值) 算术字符串运算符 +(加)、-(减)、+(连接) 比较运算符 按位运算符 逻辑运算符 逻辑运算符 逻辑运算符 赋值运算符 6.3 批处理与脚本

6.3.1批处理? 1 概念

批处理是指包含一条或多条T-SQL语句的语句组,被一次性的执行。是作为一个单元发出的一个和多个SQL语句的集合。SQL Server将批处理编译成一个可执行单元,称为执行计划。批中如果某处发生编译错误,整个执行计划都无法执行。

1 .批处理:指包含一条或多条T - SQL语句的语句组,这组语句从应用程序一次性地发送到SQL server服务器执行。

2 .执行单元:SQL server服务器将批处理语句编译成一个可执行单元,这种单元称为执行单元。

3 .若批处理中的某条语句编译出错,则无法执行。若运行出错,则视情况而定。

4 .书写批处理时,GO语句作为批处理命令的结束标志,当编译器读取到GO语句时,会把GO语句前的所有语句当作一个批处理,并将这些语句打包发送给服务器。GO语句本身不是T - SQL语句的的组成部分,只是一个表示批处理结束的前端指令。 2批处理有以下规则:

( 1 ). create default , create rule , create trigger, create procedure和create view等语句在同一个批处理中只能提交一个。

( 2 ).不能在删除一个对象之后,在同一批处理中再次引用这个对象。

( 3 ).不能把规则和默认值绑定到表字段或者自定义字段上之后,立即在同一批处理中使用它们。

( 4 ).不能定义一个check约束之后,立即在同一个批处理中使用。

( 5 ).不能修改表中一个字段名之后,立即在同一个批处理中引用这个新字段。 ( 6 ).使用set语句设置的某些set选项不能应用于同一个批处理中的查询

( 7 ).若批处理中第一个语句是执行某个存储过程的execute语句,则execute关键字可以省略。若该语句不是第一个语句,则必须写上。 3 几种指定批处理的方法

(1) 应用程序作为一个执行单元发出的所有SQL语句构成一个批处理,并生成单个执行计划。 (2) 存储过程或触发器内的所有语句构成一个批处理,每个存储过程或触发器都编译为一个执行计划。

(3) 由EXECUTE语句执行的字符串是一个批处理,并编译为一个执行计划。 (4) 由sp_executesql存储过程执行的字符串是一个批处理,并编译为一个执行计划。 说明:若应用程序发出的批处理过程中含有EXECUTE语句,已执行字符串或存储过程的执行计划将和包含EXECUTE语句的执行计划分开执行。

若sp_executesql存储过程所执行的字符串生成的执行计划也与包含sp_executesql调用的批处理执行计划分开执行。

若批处理中的语句激发了触发器,则触发器执行疾患将和原始的批处理分开执行。 2批处理的结束和推出

? 批处理结束语句:GO

作为批处理的结束标志。也就是说当编译器执行到GO时会把GO之前的所有语句当作一个批处理来执行。GO 不是T-SQL语句。

GO命令和T-SQL语句不可在同一行,在批处理中的第一条语句后执行任何存储过程必须包含EXECUTE关键字。局部(用户定义)变量的作用域限制在一个批处理中,不可在GO命令后引用。

在联机帮助里,GO解释为Signals the end of a batch of Transact-SQL statements to the Microsoft? SQL Server? utilities. 就是一个语句的结束信号。也可以理解为一个分段执行命令(有些

地方如此解释,不太好)。

GO is not a Transact-SQL statement; it is a command recognized by the osql and isql utilities and SQL Query Analyzer

EXECUTE

功能:执行标量值的用户定义函数、系统过程、用户定义存储过程或扩展存储过程。同时支持 Transact-SQL 批处理内的字符串的执行

联机帮助里解释为Executes a command string or character string within a Transact-SQL batch, or one of the following modules: system stored procedure, user-defined stored procedure, scalar-valued user-defined function, or extended stored procedure.

? 批处理退出语句:RETURN [整型表达式]

无条件中止查询、存储过程或批处理的执行。存储过程或批处理不执行位于RETURN之后的语句。当存储过程使用该语句,则可用该语句指定返回给调用应用程序、批处理或过程的整数值。若return语句未指定值,则存储过程的返回值是0。

注意:当用于存储过程时,RETURN不能返回空值。

例:返回状态,该过程检查在SC表中是否存在选修了80012课程的学生。存在则返回1,不存在返回2

create procedure checksid @param char(20) as

if (select sid from sc where cid=@param)='bj10001' return 1

else return 2

6.3.2 脚本 1 什么是脚本?

脚本是存储在文件中一系列T-SQL语句。可包含一个或多个批处理,GO作为批处理结束语句,如果脚本中无GO语句,则作为单个批处理。脚本文件扩展名为.sql

6.4 流程控制语句

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库第6章 T-SQL编程与应用(3)在线全文阅读。

第6章 T-SQL编程与应用(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/1110514.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: