IMPRESSION-Transact-SQLPRINT-Transact-SQL

CETTE RUBRIQUE S’APPLIQUE À :ouiSQL Server (à partir de la version 2008)ouiAzure SQL DatabaseouiAzure SQL Data Warehouse ouiParallel Data Warehouse THIS TOPIC APPLIES TO: yesSQL Server (starting with 2008)yesAzure SQL DatabaseyesAzure SQL Data Warehouse yesParallel Data Warehouse

Retourne un message défini par l'utilisateur au client.Returns a user-defined message to the client.

Icône de lien de rubrique Conventions de la syntaxe Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SyntaxeSyntax

PRINT msg_str | @local_variable | string_expr  

ArgumentsArguments

chaîne_du_messagemsg_str
Chaîne de caractères ou constante de chaîne Unicode.Is a character string or Unicode string constant. Pour plus d’informations, consultez constantes ( Transact-SQL ) .For more information, see Constants (Transact-SQL).

@local_variable@ local_variable
Variable de tout type de données caractères valide.Is a variable of any valid character data type. @local_variable doit être char, nchar, varchar, ou nvarchar, ou il doit pouvoir être converti implicitement dans ces types de données.@local_variable must be char, nchar, varchar, or nvarchar, or it must be able to be implicitly converted to those data types.

string_exprstring_expr
Expression qui retourne une chaîne.Is an expression that returns a string. Cet argument peut inclure des valeurs littérales concaténées, des fonctions et des variables.Can include concatenated literal values, functions, and variables. Pour plus d’informations, consultez Expressions (Transact-SQL).For more information, see Expressions (Transact-SQL).

NotesRemarks

Une chaîne de message peut contenir jusqu'à 8 000 caractères s'il s'agit d'une chaîne non-Unicode, et 4 000 caractères s'il s'agit d'une chaîne Unicode.A message string can be up to 8,000 characters long if it is a non-Unicode string, and 4,000 characters long if it is a Unicode string. Les chaînes plus longues sont tronquées.Longer strings are truncated. Le varchar (max) et nvarchar (max) des types de données sont tronqués en types de données qui ne dépassent pas varchar(8000) et nvarchar (4000).The varchar(max) and nvarchar(max) data types are truncated to data types that are no larger than varchar(8000) and nvarchar(4000).

L'instruction RAISERROR peut également être utilisée pour retourner des messages.RAISERROR can also be used to return messages. Elle présente trois avantages par rapport à l'instruction PRINT :RAISERROR has these advantages over PRINT:

  • RAISERROR prend en charge la substitution des arguments dans un message d'erreur, grâce un mécanisme semblable à la fonction printf de la bibliothèque standard en langage C.RAISERROR supports substituting arguments into an error message string using a mechanism modeled on the printf function of the C language standard library.

  • RAISERROR peut spécifier un numéro d'erreur unique, une gravité et un code d'état en plus du message textuel.RAISERROR can specify a unique error number, a severity, and a state code in addition to the text message.

  • RAISERROR peut être utilisée pour retourner des messages définis par l'utilisateur, tels qu'ils sont créés par la procédure stockée système sp_addmessage.RAISERROR can be used to return user-defined messages created using the sp_addmessage system stored procedure.

ExemplesExamples

A.A. Impression sous condition (IF EXISTS)Conditionally executing print (IF EXISTS)

L'exemple suivant utilise l'instruction PRINT pour retourner un message sous condition.The following example uses the PRINT statement to conditionally return a message.

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.B. Construction et affichage d'une chaîneBuilding and displaying a string

L'exemple suivant convertit les résultats de la fonction GETDATE dans le type nvarchar et le concatène avec un texte littéral à retourner à l'aide de PRINT.The following example converts the results of the GETDATE function to a nvarchar data type and concatenates it with literal text to be returned by PRINT.

-- Build the message text by concatenating  
-- strings and expressions.  
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  

Exemples : Azure SQL Data WarehouseAzure SQL Data Warehouse et Parallel Data WarehouseParallel Data WarehouseExamples: Azure SQL Data WarehouseAzure SQL Data Warehouse and Parallel Data WarehouseParallel Data Warehouse

C.C. L’exécution conditionnelle d’impressionConditionally executing print

L'exemple suivant utilise l'instruction PRINT pour retourner un message sous condition.The following example uses the PRINT statement to conditionally return a message.

IF DB_ID() = 1  
    PRINT N'The current database is master.';  
ELSE  
    PRINT N'The current database is not master.';  
GO  

D.D. Construction et affichage d'une chaîneBuilding and displaying a string

L'exemple suivant convertit les résultats de la fonction GETDATE dans le type nvarchar et le concatène avec un texte littéral à retourner à l'aide de PRINT.The following example converts the results of the GETDATE function to a nvarchar data type and concatenates it with literal text to be returned by PRINT.

-- Build the message text by concatenating  
-- strings and expressions.  
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.  
DECLARE @PrintMessage nvarchar(50);  
SET @PrintMessage = N'This message was printed on '  
    + RTRIM(CAST(GETDATE() AS nvarchar(30)))  
    + N'.';  
PRINT @PrintMessage;  
GO  

Voir aussiSee Also

Types de données (Transact-SQL) Data Types (Transact-SQL)
DECLARE @local_variable (Transact-SQL) DECLARE @local_variable (Transact-SQL)
RAISERROR ( Transact-SQL )RAISERROR (Transact-SQL)