当前位置:七道奇文章资讯数据防范MSSQL防范
日期:2011-05-02 15:21:00  来源:本站整理

SQL Server 7.0 入门(六)[MSSQL防范]

赞助商链接



  本文“SQL Server 7.0 入门(六)[MSSQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
成立存储历程体
存储历程逻辑驻留在存储历程体中.一个存储历程体中可以包含肆意条Transact SQL语句.下面的Transact SQL语句不能在任何存储历程体中呈现:
· CREATE DEFAULT
· CREATE TRIGGER
· CREATE PROCEDURE
· CREATE VIEW
· CREATE RULE
1、 部分变量
部分变量保持存储历程中间值.当一个值在存储历程中需求多次,大概某个查询的后果需求在随后的查询中利用时,需求利用部分变量.在这些情形下,值被存储在部分变量中,并可用于将来的利用.本地变量的名称以"@"标记开首.变量的名称可以包含字符和数值.部分变量在利用前需求举行范例声明.对部分变量举行赋值需求利用SELECT语句.SELECT可以从一个表中检索出值并将其赋给某个变量,也可以给变量赋一个常量值.一个简单的SELECT语句可以给多个部分变量赋值.
比方:
DECLARE @var1 integer, @var2 varchar(20)
SELECT @var1 = 32,
@var2 = ‘MyAge’
假如从SELECT查询中没有返回任何数据,而SELECT又要将数据的值赋予部分变量,则该部分变量的值将不会发生改变.
2、 条件文句
存储历程中供应的条件语句包含:
· IF……ELSE语句.
· WHILE语句.
1) IF……ELSE语句.在该语句中包含三个部份:布尔运算表达式,IF语句块和ELSE语句块.语法以下:
IF (boolen_expr)
{statements}
ELSE
{statements}
在IF或ELSE语句块中可以有多条语句,这种情形下,需求语句BEGIN和END来标志语句块.
2) WHILE语句.WHILE语句用于处理直到某个条件为TRUE前反复履行的语句.语法以下:
WHILE (boolen_expr)
BEGIN
statement(s)
BREAK
Statement(s)
CONTINUE
END
BEGIN和END语句标志循环体.BREAK语句完毕循环的履行(即走到END语句之后).CONTINUE语句将掌握处理历程回到循环的开始处(即BEGIN语句的右边).
注意:假若有两个或多个WHILE循环被嵌套,则内部的BREAK退出的是次外层的循环.内部循环完毕之后的全部语句在内部循环履行之后才能持续履行.

3、 GOTO语句
在存储历程的履行中,语句是次序履行的.GOTO语句则是用来冲破这种语句履行的次序,它当即跳到某条语句上履行,而这条语句常常不紧跟在前一语句之后.GOTO语句与一个标志(Label)一同利用,该标志用来标识一条语句.
比方:
USE pubs
GO

DECLARE @num int
SELECT
IF @num = 0
GOTO Err
ELSE
BEGIN
PRINT ‘authors found’
SELECT * FROM authors
GOTO Last
END
Err: PRINT ‘no authors found’
Last: PRINT ‘Finish execution’
GO
4、 RETURN语句
RETURN语句用于无条件的退出存储历程.RETURN之后的任何语句都不再履行.RETURN语句可以给调用语句返回一个值,但不能返回NULL值.sql server常常为存储历程返回一个状况值.假如成功地履行,则返回一个0,假如呈现了错误,则返回一个为负数的错误码.
存储历程返回的错误码

说 明

说 明

0
历程履行成功
-8
发生了非致命的内部问题

-1
漏掉了对象
-9
到达了系统极限

-2
发生了数据范例错误
-10
发生了致命的内部不一致错误

-3
该处理被挑选成了死锁的牺牲者
-11
发生了致命的内部不一致错误

-4
发生了权限错误
-12
表或索引被破坏

-5
发生了语法错误
-13
数据库被破坏

-6
发生了稠浊的用户错误
-14
发生了硬件错误

-7
资源错误,如空间不够等


5、 利用游标(CURSOR)在需求一行一行处理时,游标非常有效.游标可以翻开一个后果调集(按照指定的尺度挑选的行),并供应在后果集合一行一行处理的功效.基于游标的范例,可以对其举行回滚大概行进.在利用游标时需求5个步骤:

<
  以上是“SQL Server 7.0 入门(六)[MSSQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • Windows 搭配 IIS7 PHP MySQL 环境
  • sqlserver索引的原理及索引成立的注意事项小结
  • SQL Join的一些总结(实例)
  • SQL的Join利用图解教程
  • SQL中JOIN和UNION辨别、用法及示例介绍
  • 关于SQL中CTE(公用表表达式)(Common Table Expression)的总结
  • mysql Out of memory (Needed 16777224 bytes)的错误办理
  • mysql提醒[Warning] Invalid (old?) table or database name问题的办理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • MySQL Order By语法介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .