PRINT (Transact-SQL)
SQL Server 2005
向用戶端傳回使用者自訂訊息。
-
msg_str
-
這是一個字元字串或 Unicode 字串常數。如需詳細資訊,請參閱<常數 (Transact-SQL)>。
-
@local_variable
-
這是任何有效字元資料類型的變數。@local_variable 必須是 char 或 varchar,否則,它必須能夠隱含地轉換成這些資料類型。
-
string_expr
-
這是傳回字串的運算式。它可以包括串連的常值、函數和變數。訊息字串的長度最多可有 8,000 個字元;8,000 之後的任何字元都會被截斷。如需詳細資訊,請參閱<運算式 (Transact-SQL)>。
如需有關應用程式如何處理 PRINT 陳述式傳回之訊息的資訊,請參閱<處理應用程式中的錯誤和訊息>。
RAISERROR 也可用來傳回訊息。相較於 PRINT,RAISERROR 有下列優點:
-
RAISERROR 支援利用以 C 語言標準程式庫 printf 函數為基礎來建立型模的機制,將引數代入錯誤訊息中。
-
除了文字訊息之外,RAISERROR 還可以指定唯一錯誤號碼、嚴重性和狀態碼。
-
RAISERROR 可用來傳回利用 sp_addmessage 系統預存程序建立的使用者自訂訊息。
A. 有條件地執行列印 (IF EXISTS)
這個範例會利用 PRINT 陳述式,有條件地傳回訊息。
IF @@OPTIONS & 512 <> 0 PRINT N'This user has SET NOCOUNT turned ON.'; ELSE PRINT N'This user has SET NOCOUNT turned OFF.'; GO
B. 建立和顯示字串
這個範例會將 GETDATE 函數的結果轉換成 varchar 資料類型,且會將它和 PRINT 將傳回的常值文字串連起來。
-- Build the message text by concatenating -- strings and expressions using functionality -- available in SQL Server 2000 and SQL Server 2005. PRINT N'This message was printed on ' + RTRIM(CAST(GETDATE() AS NVARCHAR(30))) + N'.'; GO -- This example shows building the message text -- in a variable and then passing it to PRINT. -- This was required in SQL Server 7.0 or earlier. DECLARE @PrintMessage NVARCHAR(50); SET @PrintMessage = N'This message was printed on ' + RTRIM(CAST(GETDATE() AS NVARCHAR(30))) + N'.'; PRINT @PrintMessage; GO
社群新增項目
新增
顯示:

