日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

解讀SQL存儲(chǔ)過(guò)程入門(mén)級(jí)教程(3)_Mssql數(shù)據(jù)庫(kù)教程

編輯Tag賺U幣
教程Tag:暫無(wú)Tag,歡迎添加,賺取U幣!

推薦:按指定排列順序獲取數(shù)據(jù)的sql語(yǔ)句
測(cè)試table create table table1 (id int,name char) insert into table1 select 1,'q' union all select 2,'r' union all select 3,'3' union all select 4,'5' 要求按指定的id順序(比如2,1,4,3)排列獲取table1的數(shù)據(jù) 方法1: 使用union all,但是有256條數(shù)據(jù)的


default

參數(shù)的默認(rèn)值。如果定義了默認(rèn)值,不必指定該參數(shù)的值即可執(zhí)行過(guò)程。默認(rèn)值必須是常量或 NULL。如果過(guò)程將對(duì)該參數(shù)使用 LIKE 關(guān)鍵字,那么默認(rèn)值中可以包含通配符(%、_、[] 和 [^])。

OUTPUT

表明參數(shù)是返回參數(shù)。該選項(xiàng)的值可以返回給 EXEC[UTE]。使用 OUTPUT 參數(shù)可將信息返回給調(diào)用過(guò)程。Text、ntext 和 image 參數(shù)可用作 OUTPUT 參數(shù)。使用 OUTPUT 關(guān)鍵字的輸出參數(shù)可以是游標(biāo)占位符。

n

表示最多可以指定 2.100 個(gè)參數(shù)的占位符。

{RECOMPILE | ENCRYPTION | RECOMPILE, ENCRYPTION}

RECOMPILE 表明 SQL Server 不會(huì)緩存該過(guò)程的計(jì)劃,該過(guò)程將在運(yùn)行時(shí)重新編譯。在使用非典型值或臨時(shí)值而不希望覆蓋緩存在內(nèi)存中的執(zhí)行計(jì)劃時(shí),請(qǐng)使用 RECOMPILE 選項(xiàng)。

ENCRYPTION 表示 SQL Server 加密 syscomments 表中包含 CREATE PROCEDURE 語(yǔ)句文本的條目。使用 ENCRYPTION 可防止將過(guò)程作為 SQL Server 復(fù)制的一部分發(fā)布。



說(shuō)明 在升級(jí)過(guò)程中,SQL Server 利用存儲(chǔ)在 syscomments 中的加密注釋來(lái)重新創(chuàng)建加密過(guò)程。


FOR REPLICATION

指定不能在訂閱服務(wù)器上執(zhí)行為復(fù)制創(chuàng)建的存儲(chǔ)過(guò)程。.使用 FOR REPLICATION 選項(xiàng)創(chuàng)建的存儲(chǔ)過(guò)程可用作存儲(chǔ)過(guò)程篩選,且只能在復(fù)制過(guò)程中執(zhí)行。本選項(xiàng)不能和 WITH RECOMPILE 選項(xiàng)一起使用。

AS

指定過(guò)程要執(zhí)行的操作。

sql_statement

過(guò)程中要包含的任意數(shù)目和類型的 Transact-SQL 語(yǔ)句。但有一些限制。

n

是表示此過(guò)程可以包含多條 Transact-SQL 語(yǔ)句的占位符。

注釋
存儲(chǔ)過(guò)程的最大大小為 128 MB。
用戶定義的存儲(chǔ)過(guò)程只能在當(dāng)前數(shù)據(jù)庫(kù)中創(chuàng)建(臨時(shí)過(guò)程除外,臨時(shí)過(guò)程總是在 tempdb 中創(chuàng)建)。在單個(gè)批處理中,CREATE PROCEDURE 語(yǔ)句不能與其它 Transact-SQL 語(yǔ)句組合使用。 

默認(rèn)情況下,參數(shù)可為空。如果傳遞 NULL 參數(shù)值并且該參數(shù)在 CREATE 或 ALTER TABLE 語(yǔ)句中使用,而該語(yǔ)句中引用的列又不允許使用 NULL,則 SQL Server 會(huì)產(chǎn)生一條錯(cuò)誤信息。為了防止向不允許使用 NULL 的列傳遞 NULL 參數(shù)值,應(yīng)向過(guò)程中添加編程邏輯或?yàn)樵摿惺褂媚J(rèn)值(使用 CREATE 或 ALTER TABLE 的 DEFAULT 關(guān)鍵字)。

建議在存儲(chǔ)過(guò)程的任何 CREATE TABLE 或 ALTER TABLE 語(yǔ)句中都為每列顯式指定 NULL 或 NOT NULL,例如在創(chuàng)建臨時(shí)表時(shí)。ANSI_DFLT_ON 和 ANSI_DFLT_OFF 選項(xiàng)控制 SQL Server 為列指派 NULL 或 NOT NULL 特性的方式(如果在 CREATE TABLE 或 ALTER TABLE 語(yǔ)句中沒(méi)有指定的話)。如果某個(gè)連接執(zhí)行的存儲(chǔ)過(guò)程對(duì)這些選項(xiàng)的設(shè)置與創(chuàng)建該過(guò)程的連接的設(shè)置不同,則為第二個(gè)連接創(chuàng)建的表列可能會(huì)有不同的為空性,并且 表現(xiàn)出不同的行為方式。如果為每個(gè)列顯式聲明了 NULL 或 NOT NULL,那么將對(duì)所有執(zhí)行該存儲(chǔ)過(guò)程的連接使用相同的為空性創(chuàng)建臨時(shí)表。

在創(chuàng)建或更改存儲(chǔ)過(guò)程時(shí),SQL Server 將保存 SET QUOTED_IDENTIFIER 和 SET ANSI_NULLS 的設(shè)置。執(zhí)行存儲(chǔ)過(guò)程時(shí),將使用這些原始設(shè)置。因此,所有客戶端會(huì)話的 SET QUOTED_IDENTIFIER 和 SET ANSI_NULLS 設(shè)置在執(zhí)行存儲(chǔ)過(guò)程時(shí)都將被忽略。在存儲(chǔ)過(guò)程中出現(xiàn)的 SET QUOTED_IDENTIFIER 和 SET ANSI_NULLS 語(yǔ)句不影響存儲(chǔ)過(guò)程的功能。

其它 SET 選項(xiàng)(例如 SET ARITHABORT、SET ANSI_WARNINGS 或 SET ANSI_PADDINGS)在創(chuàng)建或更改存儲(chǔ)過(guò)程時(shí)不保存。如果存儲(chǔ)過(guò)程的邏輯取決于特定的設(shè)置,應(yīng)在過(guò)程開(kāi)頭添加一條 SET 語(yǔ)句,以確保設(shè)置正確。從存儲(chǔ)過(guò)程中執(zhí)行 SET 語(yǔ)句時(shí),該設(shè)置只在存儲(chǔ)過(guò)程完成之前有效。之后,設(shè)置將恢復(fù)為調(diào)用存儲(chǔ)過(guò)程時(shí)的值。這使個(gè)別的客戶端可以設(shè)置所需的選項(xiàng),而不會(huì)影響存儲(chǔ)過(guò)程的邏輯。

分享:總結(jié)經(jīng)典常用的SQL語(yǔ)句(2)
向表中添加一個(gè)新記錄,你要使用SQLINSERT語(yǔ)句。 這里有一個(gè)如何使用這種語(yǔ)句的例子: INSERTmytable(mycolumn)VALUES(‘somedata’) 這個(gè)語(yǔ)句把字符串’somedata’插入表mytable的mycolumn字段中。將要被插入數(shù)據(jù)的字段的名字在第一個(gè)括號(hào)中指定,實(shí)際的數(shù)

來(lái)源:模板無(wú)憂//所屬分類:Mssql數(shù)據(jù)庫(kù)教程/更新時(shí)間:2010-04-06
相關(guān)Mssql數(shù)據(jù)庫(kù)教程