適用於:SQL Server
Azure SQL 資料庫
Azure SQL 受控執行個體
Azure Synapse Analytics
分析平台系統(PDW)
Microsoft Fabric 中的 SQL 分析端點
Microsoft Fabric 中的倉儲
Microsoft Fabric 中的 SQL 資料庫
向用戶端傳回使用者自訂訊息。 例如,在 SQL Server Management Studio 中, PRINT 輸出至查詢結果視窗的 [訊息] 索引標籤。
Syntax
PRINT msg_str | @local_variable | string_expr
Arguments
msg_str
字元字串或 Unicode 字串常數。 如需詳細資訊,請參閱常數。
@local_variable
任何有效字元數據類型的變數。 @local_variable必須是 char、nchar、varchar 或 nvarchar,或者必須能夠隱含地轉換成這些數據類型。
string_expr
傳回字串的表達式。 它可以包括串連的常值、函數和變數。 如需詳細資訊,請參閱運算式。
Remarks
如果訊息字串是非 Unicode 字串,則訊息字串長度最多可達 8,000 個字元,如果它是 Unicode 字串,則長度為 4,000 個字元。 較長字串會被截斷。 varchar(max) 和 nvarchar(max) 資料類型都會被截斷為長度不超過 varchar(8000) 和 nvarchar(4000) 的資料類型。
RAISERROR 也可以用來傳回訊息。
RAISERROR具有下列優點:PRINT
RAISERROR支援使用 C 語言標準連結庫 printf 函式上模型化的機制,將自變數取代為錯誤訊息字串。RAISERROR除了文字訊息之外,還可以指定唯一的錯誤號碼、嚴重性和狀態代碼。RAISERROR可用來傳回使用 sp_addmessage (Transact-SQL) 系統預存程式所建立的使用者定義訊息。
Examples
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 函式的結果轉換成 nvarchar 數據類型,並以 所傳PRINT回的常值文字串連。
PRINT N'This message was printed on ' + RTRIM(CAST(GETDATE() AS NVARCHAR(30))) + N'.';
GO
下列範例示範在變數中建置消息正文。
DECLARE @PrintMessage NVARCHAR(50);
SET @PrintMessage = N'This message was printed on ' + RTRIM(CAST(GETDATE() AS NVARCHAR(30))) + N'.';
PRINT @PrintMessage;
GO
範例:Azure Synapse Analytics 和 Analytics Platform System (PDW)
C. 有條件地執行列印
這個範例會利用 PRINT 陳述式,有條件地傳回訊息。
IF DB_ID() = 1
PRINT N'The current database is ''master''.';
ELSE
PRINT N'The current database is not ''master''.';
GO