Imprimer-Transact-SQL

 

CETTE RUBRIQUE S’APPLIQUE À : ouiSQL Server (à partir de la version 2008)ouiAzure SQL DatabaseouiAzure SQL Data WarehouseouiParallel Data Warehouse

Retourne un message défini par l'utilisateur au client.

Topic link icon Conventions de la syntaxe Transact-SQL

-- Syntax for SQL Server, Azure SQL Database, Azure SQL Data Warehouse, Parallel Data Warehouse  

PRINT msg_str | @local_variable | string_expr  

chaîne_du_message
Chaîne de caractères ou constante de chaîne Unicode. Pour plus d’informations, consultez constantes (Transact-SQL).

@variable_locale
Variable de tout type de données caractères valide. @variable_locale doit être char, nchar, varchar, ou nvarchar, ou il doit pouvoir être converti implicitement dans ces types de données.

string_expr
Expression qui retourne une chaîne. Cet argument peut inclure des valeurs littérales concaténées, des fonctions et des variables. Pour plus d’informations, consultez Expressions (Transact-SQL).

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. Les chaînes plus longues sont tronquées. Le varchar (max) et nvarchar (max) des types de données sont tronquées à des types de données qui ne dépassent pas 8000 et nvarchar (4000).

L'instruction RAISERROR peut également être utilisée pour retourner des messages. Elle présente trois avantages par rapport à l'instruction 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 peut spécifier un numéro d'erreur unique, une gravité et un code d'état en plus du message textuel.

  • 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.

A. Impression sous condition (IF EXISTS)

L'exemple suivant utilise l'instruction PRINT 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

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.

-- 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  

C. L’exécution conditionnelle d’impression

L'exemple suivant utilise l'instruction PRINT pour retourner un message sous condition.

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

D. Construction et affichage d'une chaîne

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.

-- 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  

Types de données (Transact-SQL)
DÉCLARER @local_variable (Transact-SQL)
RAISERROR (Transact-SQL)

Ajouts de la communauté

AJOUTER
Afficher: