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

Aide et Informations

Assistance sur SQL Server 2005