摘要:
前段时间,曾经写过一个例子,http://www.cnblogs.com/insus/articles/1916558.html是使用OUTPUT来记录更新前后的值,现在可以使用SQL Server的触发器来实现。演示,代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->--创建一个UPDATE触发器CREATETRIGGER[dbo].[tri_Member_Udate]ON[dbo].[Member]FORUPDATEASBEGIN--宣 阅读全文
posted @ 2010-12-27 19:18
Insus.NET
阅读(625)
评论(1)
推荐(2)
摘要:
WHILE是SQL Server另一个基本流程控制元素,用于循环执行代码。WHILE后面的条件为TRUE时,循环执行指定的SQL语句或语句块,如果WHILE后的条件为FALSE或UNKNOWN时,循环终止。演示,更详细例子,请参阅http://www.cnblogs.com/insus/articles/1914346.html:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->--宣告一个INT类型变量,并赋值DECLARE@FirstC 阅读全文
posted @ 2010-12-27 18:33
Insus.NET
阅读(388)
评论(1)
推荐(2)
摘要:
IF...ELSE元素在SQL Server中,是用于控制代码程流(逻辑处理)。如果条件为TRUE,则执行指定的语句或语句块;如果条件为FALSE或UNKNOWN则执行指定的另外语句或语句块。ELSE部分是可选的。演示:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->--判断存储过程是否存在IFOBJECT_ID('[dbo].[usp_Employee_Search]','u')ISNOTNULL--如果 阅读全文
posted @ 2010-12-27 18:08
Insus.NET
阅读(597)
评论(1)
推荐(2)
摘要:
不能在同一批处理中编译的语句,为了解决这个问题,需要在每个处理单元之间添加一个GO。如下:CREATE DEFAULT,CREATE RULE,CREATE FUNCTION,CREATE PROCEDURE,CREATE TRIGGER,CREATE SCHEMA,CREATE VIEW例子,可以参考:http://www.cnblogs.com/insus/articles/1917870.htmlIF语句之后添加一个GO命令,把IF与CREATE PROCEDURE分隔到两个不同的批处理执行。 阅读全文
posted @ 2010-12-27 17:38
Insus.NET
阅读(874)
评论(1)
推荐(2)
摘要:
当一个存储过程参数接收一个Array时,我们可以用下面方法来处理,可以很方便实现。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->CREATEPROCEDURE[dbo].[usp_Prod_GetByType](@ArrayIDNVARCHAR(100))AS--处理传入参数DECLARE@ParamsNVARCHAR(100)=REPLACE(@ArrayID,',',''','' 阅读全文
posted @ 2010-12-27 15:35
Insus.NET
阅读(2291)
评论(1)
推荐(3)
摘要:
SELECT INTO语句,创建一个目标表,把SELECT结果集插入至这个目标表中。这个目标表是在执行时产生,并非是在执行前产生,即是说不能向已经存的目标表插入数据。它会把来源表的基本结构进行复制。但不能复制约束,索引和触发器。演示,Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->--判断目标表是否存在,存在首先DROP掉IFOBJECT_ID('[dbo].[TT]','u')ISNOTNULLDROPTAB 阅读全文
posted @ 2010-12-27 14:19
Insus.NET
阅读(422)
评论(1)
推荐(2)
摘要:
INSERT SELECT语句是可以把SELECT查询返回结果集插入目标数据表中。演示,首先创建一个临时表,Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->IFOBJECT_ID('#t')ISNOTNULLDROPTABLE#tCREATETABLE#t([MemberId][int]NOTNULL,[Name][nvarchar](100)NOTNULL,[Job][bit]NULL)使用INSERT SELECT语法,C 阅读全文
posted @ 2010-12-27 13:44
Insus.NET
阅读(1538)
评论(1)
推荐(2)
摘要:
INSERT EXEC语句可以把存储过程或动态SQL批处理返结果集插入目标数据表中,下面例子是以存储过程返回结果集插入一个表变量中,演示例子,首选创建一个存储过程,这个存储过程需要传入一个参数,是否在职的Member。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->IFOBJECT_ID('dbo.usp_Member_Job','p')ISNOTNULLDROPPROCEDUREdbo.usp_Membe 阅读全文
posted @ 2010-12-27 13:16
Insus.NET
阅读(1432)
评论(1)
推荐(2)
摘要:
把变量字段动态添加至数据表中,为了演示这个例子,首先创建一个临时表,这个临时表只产生一个IDENTITY字段,Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->BEGINIFOBJECT_ID('[dbo].[#DummyTable]')ISNOTNULLDROPTABLE[dbo].[#DummyTable]CREATETABLE[dbo].[#DummyTable]([ID]INTIDENTITYNOTNULL)END我们宣 阅读全文
posted @ 2010-12-27 10:56
Insus.NET
阅读(1391)
评论(1)
推荐(2)
摘要:
写存储过程,我们会经常需要动态创数据表,如临时表等。下面例子是使用Execute来创建一个数据表。Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->--宣告一个变量DECLARE@tableNameNVARCHAR(30)='DummyTableName'动态创建表,代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeH 阅读全文
posted @ 2010-12-27 10:26
Insus.NET
阅读(793)
评论(1)
推荐(2)

浙公网安备 33010602011771号