仓酷云
标题:
MSSQL编程:SQL Server 7.0 进门(六)
[打印本页]
作者:
只想知道
时间:
2015-1-16 22:25
标题:
MSSQL编程:SQL Server 7.0 进门(六)
操作被同步到从库上后,则主从都“回天无力”。server创建存储历程体
存储历程逻辑驻留在存储历程体中。一个存储历程体中能够包括恣意条TransactSQL语句。上面的TransactSQL语句不克不及在任何存储历程体中呈现:
・CREATEDEFAULT
・CREATETRIGGER
・CREATEPROCEDURE
・CREATEVIEW
・CREATERULE
1、部分变量
部分变量坚持存储过程当中间值。当一个值在存储过程当中必要屡次,大概某个查询的了局必要在随后的查询中利用时,必要利用部分变量。在这些情况下,值被存储在部分变量中,并可用于未来的利用。当地变量的称号以“@”标记开首。变量的称号能够包括字符和数值。部分变量在利用前必要举行范例声明。对部分变量举行赋值必要利用SELECT语句。SELECT能够从一个表中检索出值并将其赋给某个变量,也能够给变量赋一个常量值。一个复杂的SELECT语句能够给多个部分变量赋值。
比方:
DECLARE@var1integer,@var2varchar(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)一同利用,该标记用来标识一条语句。
比方:
USEpubs
GO
DECLARE@numint
SELECT
IF@num=0
GOTOErr
ELSE
BEGIN
PRINT‘authorsfound’
SELECT*FROMauthors
GOTOLast
END
Err:PRINT‘noauthorsfound’
Last:PRINT‘Finishexecution’
GO
4、RETURN语句
RETURN语句用于无前提的加入存储历程。RETURN以后的任何语句都不再实行。RETURN语句能够给挪用语句前往一个值,但不克不及前往NULL值。SQLServer常常为存储历程前往一个形态值。假如乐成地实行,则前往一个0,假如呈现了毛病,则前往一个为正数的毛病码。
存储历程前往的毛病码
值
说明
值
说明
0
历程实行乐成
-8
产生了非致命的外部成绩
-1
遗漏了工具
-9
到达了体系极限
-2
产生了数据范例毛病
-10
产生了致命的外部纷歧致毛病
-3
该处置被选择成了逝世锁的就义者
-11
产生了致命的外部纷歧致毛病
-4
产生了权限毛病
-12
表或索引被损坏
-5
产生了语法毛病
-13
数据库被损坏
-6
产生了混同的用户毛病
-14
产生了硬件毛病
-7
资本毛病,如空间不敷等
5、利用游标(CURSOR)在必要一行一行处置时,游标非常有效。游标能够翻开一个了局汇合(依照指定的尺度选择的行),并供应在了局会合一行一行处置的功效。基于游标的范例,能够对其举行回滚大概行进。在利用游标时必要5个步骤:
mysqld进程在一个写入当中被杀死;计算机的意外关闭(例如,如果计算机掉电);一个硬件错误。
作者:
飘灵儿
时间:
2015-1-19 11:32
索引视图2k就有。但是2005对其效率作了一些改进但是schema.viewname的作用域真是太限制了它的应用面。还有一大堆的环境参数和种种限制都让人对它有点却步。
作者:
莫相离
时间:
2015-1-24 14:23
呵呵,这就是偶想说的
作者:
蒙在股里
时间:
2015-2-1 16:59
从项目平台的选择上讲,我们关心的,应该是一款产品能不能满足任务需求,而不是网上怎么说。
作者:
若天明
时间:
2015-2-7 10:46
记得在最开始使用2k的时候就要用到这个功能,可惜2k没有,现在有了作解决方案的朋友会很高兴吧。
作者:
飘飘悠悠
时间:
2015-2-21 19:01
比如日志传送、比如集群。。。
作者:
透明
时间:
2015-3-6 21:08
你觉得我的非分区索引无法对起子分区,你可以提醒我一下呀!没有任何的提醒,直接就变成了非分区表。不知道这算不算一个bug。大家也可以试试。
作者:
再见西城
时间:
2015-3-13 09:09
相信各位对数据库和怎么样学习数据库都有一些经验和看法,也会有人走了一些弯路总结出自己的经验来,希望大家能把各自的看法和经验拿出来分享,给别人一份帮助,给自己一份快乐
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2