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.

陆零(¥25)云端专用的高性能、安全隔离的物理集群六折起

陆零网络是正规的IDC公司,我们采用优质硬件和网络,为客户提供高速、稳定的云计算服务。公司拥有一流的技术团队,提供7*24小时1对1售后服务,让您无后顾之忧。我们目前提供高防空间、云服务器、物理服务器,高防IP等众多产品,为您提供轻松上云、安全防护 为核心数据库、关键应用系统、高性能计算业务提供云端专用的高性能、安全隔离的物理集群。分钟级交付周期助你的企业获得实时的业务响应能力,助力核心业务飞速成...

月神科技:香港CN2/洛杉矶CN2/华中电信高防vps,月付20元起

月神科技怎么样?月神科技是由江西月神科技有限公司运营的一家自营云产品的IDC服务商,提供香港安畅、香港沙田、美国CERA、华中电信等机房资源,月神科技有自己的用户群和拥有创宇认证,并且也有电商企业将业务架设在月神科技的平台上。目前,香港CN2云服务器、洛杉矶CN2云主机、华中电信高防vps,月付20元起。点击进入:月神科技官方网站地址月神科技vps优惠信息:香港安畅CN2-GIA低至20元核心:2...

Hosteons - 限时洛杉矶/达拉斯/纽约 免费升级至10G带宽 低至年$21

Hosteons,一家海外主机商成立于2018年,在之前还没有介绍和接触这个主机商,今天是有在LEB上看到有官方发送的活动主要是针对LEB的用户提供的洛杉矶、达拉斯和纽约三个机房的方案,最低年付21美元,其特点主要在于可以从1G带宽升级至10G,而且是免费的,是不是很吸引人?本来这次活动是仅仅在LEB留言提交账单ID才可以,这个感觉有点麻烦。不过看到老龚同学有拿到识别优惠码,于是就一并来分享给有需...

删除用户为你推荐
闪迪和金士顿哪个好u盘是金士顿好还是闪迪好?浮动利率和固定利率哪个好银行贷款是选固定利率好还是浮动利率二手车网站哪个好卖二手车网站哪个好红茶和绿茶哪个好红茶和绿茶哪个更好?电动牙刷哪个好什么品牌的电动牙刷比较好?牡丹江教育云空间登录我想知道校园云空间是用什么账号登录的?电信10000宽带测速电信宽带速度东莞电信宽带东莞电信光纤宽带包月费用多少 个人公司家用宽带办理360云盘转存百度云盘360云盘可以转存百度云盘吗便宜的拼音便宜一词的读音
私人服务器 sockscap ixwebhosting ev证书 魔兽世界台湾服务器 java空间 浙江独立 gg广告 权嘉云 共享主机 服务器托管什么意思 卡巴斯基破解版 四川电信商城 cxz 免费asp空间申请 ssl加速 锐速 脚本大全 发证机构 cc加速器 更多