PRINT (Transact-SQL)
Retourne un message défini par l'utilisateur au client.
Syntaxe
PRINT msg_str | @local_variable | string_expr
Arguments
msg_str
Chaîne de caractères ou constante de chaîne Unicode. Pour plus d'informations, consultez Constantes (Transact-SQL).
@local_variable
Variable de tout type caractère valide. @local_variable doit être du type char ou varchar, ou doit pouvoir être implicitement converti dans ces types.
string_expr
Expression qui retourne une chaîne. Peut inclure des valeurs littérales concaténées, des fonctions et des variables. Cette chaîne de message peut comporter 8 000 caractères au plus ; tout caractère supplémentaire est tronqué. Pour plus d'informations, consultez Expressions (Transact-SQL).
Notes
Pour des informations sur le mode de traitement par les applications des messages retournés par l'instruction PRINT, consultez Gestion des erreurs et des messages dans les applications.
L'instruction RAISERROR peut également être utilisée pour retourner des messages. L'instruction RAISERROR a trois avantages par rapport à l'instruction PRINT :
- Elle 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 de langage C.
- Elle peut spécifier un numéro d'erreur unique, une gravité et un code d'état en plus du message textuel.
- Elle 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.
Exemple
A. Impression sous condition (IF EXISTS)
Dans cet exemple, l'instruction PRINT est utilisée pour retourner un message sous condition.
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. Construction et affichage d'une chaîne
Cet exemple convertit les résultats de la fonction GETDATE dans le type varchar et le concatène avec un texte littéral à retourner à l'aide de 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
Voir aussi
Référence
Types de données (Transact-SQL)
DECLARE @local\_variable (Transact-SQL)
RAISERROR (Transact-SQL)
Autres ressources
Utilisation de PRINT
Utilisation de RAISERROR