Transact-SQL(简记为T-SQL)是微软公司在数据库管理系统SQL

删除用户  时间:2021-01-30  阅读:()

Server上的SQL扩展,利用Transact-SQL不仅可以完成数据库上的各种操作,而且可以很容易地编制复杂的例行程序.

Transact-SQL语言的主要特点如下:(1)是一种交互式查询语言,功能强大,简单易学.
(2)既可以直接查询数据库,也可以嵌入到其它高级语言中执行.
(3)非过程化程度高,语句的操作执行由系统自动完成.
(4)所有的Transact-SQL命令都可以在查询分析器中完成.

9.
7Transact-SQL编程9.
7Transact-SQL编程9.
7.
1用户定义的数据类型9.
7.
2流程控制语句9.
7.
3显示和输出语句9.
7.
4函数9.
7.
5存储过程9.
7.
6触发器用户定义的数据类型可以实现以下功能:(1)可以让不同表中重复出现的各列具有相同的特性,使相似的数据种类标准化.
(2)可以将规则和默认值捆绑到用户定义的数据类型上,以约束使用此数据类型的每个列.
1.
创建用户自定义数据类型(1)使用企业管理器创建用户自定义数据类型;(2)使用T-SQL创建用户类型使用T-SQL语句创建用户自定义数据类型,可以通过调用系统存储过程sp_addtype实现,具体语法为:sp_addtypetype[,systemdata_type][,'null_type']9.
7.
1用户定义的数据类型2.
查看用户自定义数据类型可以使用sp_help系统存储过程来查看用户自定义数据类型的信息,包括它基于的系统数据类型、长度、精度、是否允许空值,以及在这一数据类型上捆绑的规则和默认值等.
3.
删除用户自定义数据类型使用企业管理器删除用户定义的数据类型;(2)使用T-SQL语句删除的方法使用系统存储过程sp_droptype来删除用户自定义数据类型.
语法格式为:sp_droptypetype_name9.
7.
1用户定义的数据类型1.
IF…ELSEIF…ELSE属于分支语句,根据条件测试的结果执行不同的命令体.
其语法结构为:IFBoolean_expression{sql_statement1|statement_block1}[ELSE{sql_statement2|statement_block2}]9.
7.
2流程控制语句2.
BEGIN…ENDBEGIN…END结构使一组Transact-SQL命令作为一个整体或一个单元来执行.
BEGIN定义了一个单元的起始位置,END作为一个单元的结束.
BEGIN…END多用于IF…ELSE结构和WHILE结构中.
其语法结构为:BEGIN{sql_statementstatement-block}END9.
7.
2流程控制语句3.
WHILEWHILE命令用于执行一个循环体.
其语法结构为:WHILEBoolean_expression{sql-statement1|statement_block1[BREAK]sql-statement2|statement_block2[CONTINUE]}9.
7.
2流程控制语句4.
GOTO标签GOTO命令与其它使用GOTO命令的高级语言一样,将程序的执行跳到相关的标签处.
GOTO命令的语法结构如下:GOTOlabel5.
WAITFOR命令WAITFOR命令产生一个延时,使存储过程或程序等候或直到一个特定时间片后继续执行.
其语法结构如下:WAITFOR{DELAY'time'|TIME'time'}9.
7.
2流程控制语句6.
RETURE命令RETURN命令使一个存储过程或程序退出并返回到调用它的程序中.
其语法结构如下:RETURN[integer_expression]7.
注释语句Transact-SQL的注释语句共有两种:行注释、块注释.
在Transact-SQL程序中,由多条命令语句组成的一组程序称为块.
行注释语句以两个减号(--)开始的若干字符,一般位于程序行之后.
块注释语句以/*开始到*/结束的若干字符.

9.
7.
2流程控制语句8.
CASE表达式CASE表达式有两种不同形式:简单CASE表达式和搜索式CASE表达式.

(1)简单CASE表达式简单CASE表达式的语法结构如下:CASElnput_expressionWHENwhen_expression1THENresult_expression1[…][WHENwhen_expressionnTHENresult_expressionn][ELSEelse_resultexpression]END9.
7.
2流程控制语句(2)搜索式CASE表达式搜索式CASE的语法结构如下:CASEWHENBoolean_expression1THENresult_expression1[…][WHENwhen_expressionnTHENresult_expressionn][ELSEelse_result_expression]END9.
7.
2流程控制语句2.
错误消息处理在存储过程中可以使用系统存储过程sp_addmessage、全局变量@@ERROR或RAISERROR命令返回出错信息.

9.
7.
3显示和输出语句1.
内置函数内置函数分类情况如表9-9所示.
9.
7.
4函数2.
用户自定义的函数SQLServer2000支持三种用户自定义函数:返回数值的用户自定义函数、内联(单语句)的返回表的用户自定义函数和多语句返回表的用户自定义函数.
用户自定义函数可以接受零个或多个输入参数,返回值可以是数值或表,不支持输出参数.
创建用户自定义函数用CREATEFUNCTION语句实现.
下面介绍两种简单的CREATEFUNCTION语句格式:(1)返回数值的用户自定义函数语句格式;(2)内联(单语句)的返回表的用户自定义函数语句格式9.
7.
4函数1.
存储过程简介SQLServer中的存储过程类似于编程语言中的过程和函数,它具有以下功能:(1)接受输入参数并返回多个输出值.
(2)包含T-SQL语句用以完成特定的SQLServer操作.
(3)返回一个指示成功与否及失败原因的状态代码给调用它的过程.
存储过程是一组预编译的Transact-SQL语句,主体构成是标准SQL命令,同时包括SQL的扩展:语句块、结构控制命令、变量、常量、运算符、表达式和流程控制等,所有这些组合在一起构成了存储过程.
存储过程有以下几种类型:系统存储过程、用户存储过程、临时存储过程、扩展存储过程和远程存储过程.

9.
7.
5存储过程2.
创建存储过程在SQLServer中创建存储过程主要有以下3种方法:使用向导、使用企业管理器和使用Transact-SQL命令.
3.
存储过程中的参数SQLServer中存储过程的参数包括输入参数和输出参数.
9.
7.
5存储过程4.
修改存储过程在企业管理器中,修改存储过程只需在相应数据库的存储过程对象项中找到要修改的存储过程,双击存储过程打开存储过程属性窗口,在窗口中直接进行修改,完成后单击"确定"按钮.
在T-SQL命令中使用ALTERPROCEDURE可以修改存储过程.
此外,还可以使用查询分析器修改存储过程.
9.
7.
5存储过程5.
运行存储过程(1)存储过程的编译首次运行存储过程时,SQLServer编译并检验其中的程序,如果发现错误,系统将拒绝执行此存储过程.
(2)存储过程的执行具有存储过程执行权限EXECUTE的用户,才可以执行存储过程.
在查询分析器中,可以直接输入存储过程名,指定相应的输入参数和输出参数后执行.
或者利用EXECUTE命令执行.

9.
7.
5存储过程6.
删除存储过程(1)使用企业管理器删除存储过程(2)使用T-SQL命令删除存储过程7.
查看存储过程的有关信息使用sp_helptext系统存储过程,可以查看定义存储过程的T-SQL语句.
使用企业管理器,也可以查看存储过程的定义.

9.
7.
5存储过程1.
触发器简介触发器是一种特殊的存储过程,是SQLServer为保证数据完整性、确保系统正常工作而设置的一种高级技术.
SQLServer2000提供了两种触发器:INSTEADOF和AFTER触发器.
这两种触发器的差别在于他们被激活的时机不同.
2.
创建触发器只有数据库所有者才能创建触发器.
在一个表上创建同名的触发器,将覆盖原有触发器.
创建触发器有以下几种方法.
(1)在SQLServer企业管理器中创建触发器(2)利用Transact-SQL命令创建触发器9.
7.
6触发器3.
AFTER触发器INSERT与UPDATE触发器:当向表中插入数据时,所有数据约束都通过之后,INSERT触发器就会执行.
利用UPDATE修改一条记录时,相当于删除一条记录然后再增加一条新记录.

(2)DELETE触发器:对表进行删除时,如果此表有DELETE型的触发器,则触发器被触发执行.
被删除的记录存在DELETED表中.
当执行DELETE操作时,应注意以下几点:①被放到DELETED表中的记录,不再存于触发器表中,因此触发器表与DElETED表没有共同的记录.
DELETED表放放在内存中,执行效率很高.

9.
7.
6触发器4.
嵌套触发器当一个表上的触发器执行时改变了表中的数据,从而又激活了此表上的另外一个触发器,第2个触发器对表的改变又触发了第3个触发器,以此类推,称为触发器嵌套.
触发器最多可以嵌套32级.
当系统检测到触发器嵌套陷入死循环或超出最大嵌套级时,触发器被取消.

系统默认允许触发器嵌套,SQLServer使用系统过程sp_configure来设置是否允许触发器嵌套.
在使用嵌套触发器时,需要注意以下几点:(1)默认情况下,触发器不能自己调用自己.
(2)在嵌套的触发器中,只要任一触发器中的任一点发生错误,则整个事务和数据都会全部ROLLBACK.

ZJI全新上架香港站群服务器,4C段238个IP月付1400元起

ZJI本月新上线了香港葵湾机房站群服务器,提供4个C段238个IPv4,支持使用8折优惠码,优惠后最低每月1400元起。ZJI是原Wordpress圈知名主机商家:维翔主机,成立于2011年,2018年9月更名为ZJI,提供中国香港、台湾、日本、美国独立服务器(自营/数据中心直营)租用及VDS、虚拟主机空间、域名注册等业务,所选数据中心均为国内普遍访问速度不错的机房。葵湾二型(4C站群)CPU:I...

pacificrack7月美国便宜支持win VPS,$19.99/年,2G内存/1核/50gSSD/1T流量

pacificrack发布了7月最新vps优惠,新款促销便宜vps采用的是魔方管理,也就是PR-M系列。提一下有意思的是这次支持Windows server 2003、2008R2、2012R2、2016、2019、Windows 7、Windows 10,当然啦,常规Linux系统是必不可少的!1Gbps带宽、KVM虚拟、纯SSD raid10、自家QN机房洛杉矶数据中心...支持PayPal、...

CloudCone2核KVM美国洛杉矶MC机房机房2.89美元/月,美国洛杉矶MC机房KVM虚拟架构2核1.5G内存1Gbps带宽,国外便宜美国VPS七月特价优惠

近日CloudCone发布了七月的特价便宜优惠VPS云服务器产品,KVM虚拟架构,性价比最高的为2核心1.5G内存1Gbps带宽5TB月流量,2.89美元/月,稳定性还是非常不错的,有需要国外便宜VPS云服务器的朋友可以关注一下。CloudCone怎么样?CloudCone服务器好不好?CloudCone值不值得购买?CloudCone是一家成立于2017年的美国服务器提供商,国外实力大厂,自己开...

删除用户为你推荐
软银巨亏孙正义的个人经历游戏加速器哪个好游戏加速器用哪个比较好用手机音乐播放器哪个好手机音乐播放器音质好的APP是那款网络机顶盒哪个好哪个品牌的网络机顶盒好用?牡丹江教育云空间登录云空间的账号密忘了可是那个上面有不有不让重新申请一个怎么办铁通dns服务器地址adsl铁通要设置dns服务器地址吗360云盘登录怎么登录怎么登陆360云盘?360云盘网页版网页版360云盘打不开,求助!360云u盘360云U盘自动备份有什么用360云盘共享群360云盘怎么找共享群
成都虚拟空间 美国虚拟主机购买 域名城 哈尔滨服务器租用 stablehost bluehost 免费主机 淘宝双十一2018 日本bb瘦 web服务器的架设 域名转接 免费防火墙 t云 无限流量 免费asp空间申请 国内空间 小夜博客 聚惠网 酷锐 美国asp空间 更多