說明 在公升級過程中,sqlserver 利用儲存在 syscomments 中的加密注釋來重新建立加密過程。
for replication
指定不能在訂閱伺服器上執行為複製建立的儲存過程。.使用 for replication 選項建立的儲存過程可用作儲存過程篩選,且只能在複製過程中執行。本選項不能和 with recompile 選項一起使用。
as指定過程要執行的操作。
sql_statement
過程中要包含的任意數目和型別的 transact-sql 語句。但有一些限制。
n 是表示此過程可以包含多條 transact-sql 語句的佔位符。
注釋儲存過程的最大大小為 128 mb。
使用者定義的儲存過程只能在當前資料庫中建立(臨時過程除外,臨時過程總是在 tempdb 中建立)。在單個批處理中,create procedure 語句不能與其它transact-sql 語句組合使用。
默 認情況下,引數可為空。如果傳遞 null 引數值並且該引數在 create 或 alter table 語句中使用,而該語句中引用的列又不允許使用 null,則 sql server 會產生一條錯誤資訊。為了防止向不允許使用 null 的列傳遞 null 引數值,應向過程中新增程式設計邏輯或為該列使用預設值(使用 create 或 alter table 的 default 關鍵字)。
建 議在儲存過程的任何 create table 或 alter table 語句中都為每列顯式指定 null 或 not null,例如在建立臨時表時。ansi_dflt_on 和 ansi_dflt_off 選項控制 sql server 為列指派 null 或 not null 特性的方式(如果在 create table 或 alter table 語句中沒有指定的話)。如果某個連線執行的儲存過程對這些選項的設定與建立該過程的連線的設定不同,則為第二個連線建立的表列可能會有不同的為空性,並且 表現出不同的行為方式。如果為每個列顯式宣告了 null 或 not null,那麼將對所有執行該儲存過程的連線使用相同的為空性建立臨時表。
在 建立或更改儲存過程時,sql server 將儲存 set quoted_identifier 和 set ansi_nulls 的設定。執行儲存過程時,將使用這些原始設定。因此,所有客戶端會話的 set quoted_identifier 和 set ansi_nulls 設定在執行儲存過程時都將被忽略。在儲存過程中出現的 set quoted_identifier 和 set ansi_nulls 語句不影響儲存過程的功能。
其 它 set 選項(例如 set arithabort、set ansi_warnings 或 set ansi_paddings)在建立或更改儲存過程時不儲存。如果儲存過程的邏輯取決於特定的設定,應在過程開頭新增一條 set 語句,以確保設定正確。從儲存過程中執行 set 語句時,該設定只在儲存過程完成之前有效。之後,設定將恢復為呼叫儲存過程時的值。這使個別的客戶端可以設定所需的選項,而不會影響儲存過程的邏輯。
說 明 sql server 是將空字串解釋為單個空格還是解釋為真正的空字串,由相容級別設定控制。如果相容級別小於或等於 65,sql server 就將空字串解釋為單個空格。如果相容級別等於 70,則 sql server 將空字串解釋為空字串。有關更多資訊,請參見 sp_dbcmptlevel。
獲得有關儲存過程的資訊
若要顯示用來建立過程的文字,請在過程所在的資料庫中執行 sp_helptext,並使用過程名作為引數。
說明 使用 encryption 選項建立的儲存過程不能使用 sp_helptext 檢視。
若要顯示有關過程引用的物件的報表,請使用 sp_depends。
若要為過程重新命名,請使用 sp_rename。
oracle 儲存過程基礎知識3
引用物件 sql server 允許建立的儲存過程引用尚不存在的物件。在建立時,只進行語法檢查。執行時,如果快取記憶體中尚無有效的計畫,則編譯儲存過程以生成執行計畫。只有在編譯過 程中才解析儲存過程中引用的所有物件。因此,如果語法正確的儲存過程引用了不存在的物件,則仍可以成功建立,但在執行時將失敗,...
儲存過程基礎知識
1.1,儲存過程概念 sql sever將一些需要呼叫的固定操作編寫操作編寫為子程式,並集中以乙個儲存單元的形式儲存在儲存過程是一種重要的資料物件,它儲存於資料庫的伺服器中,儲存過程 可由應用程式通過execute語句呼叫執行,具有較強的程式設計功能。1.2,儲存過程特點 在sql server中使...
Oracle基礎知識(2)
grant connect,resource to m1 切換使用者到m1 conn m1 123456 撤銷使用者許可權 revoke connect,resource from m1 刪除使用者 drop user m1 drop user m1 cascade 使用者有表 日期函式 顯示當前日...