Serveur d'impression

PRINT (Transact-SQL) – SQL Server – Bien choisir son serveur d impression

Le 18 juin 2019 - 5 minutes de lecture

<! – ->

S'APPLIQUE À : OuiSQL Server (à partir de 2008) OuiBase de données SQL Azure OuiAzure SQL Data Warehouse OuiEntrepôt de données parallèle S'APPLIQUE À: OuiSQL Server (à partir de 2008) OuiBase de données SQL Azure OuiAzure SQL Data Warehouse OuiEntrepôt de données parallèle

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

Icône de lien de sujet Conventions de syntaxe Transact-SQLIcône de lien de sujet Conventions de syntaxe Transact-SQL

SyntaxeSyntaxe

PRINT msg_str | @local_variable | string_expr  

CasCas

msg_strmsg_str
Chaîne de caractères ou constante de chaîne Unicode.Est une chaîne de caractères ou une constante de chaîne Unicode. Pour plus d'informations, consultez Constantes (Transact-SQL).Pour plus d'informations, consultez Constantes (Transact-SQL).

@ variable locale@ variable locale
Variable de tout type de données de caractère valides.Est une variable de tout type de données de caractère valide. @ variable locale doit être de type réservoir, nchar, varchar ou Nvarcharou il doit être implicitement convertible en ces types de données.@variable locale doit être réservoir, nchar, varchar, or Nvarchar, ou il doit pouvoir être implicitement converti en ces types de données.

string_exprstring_expr
Une expression qui retourne une chaîne.Est une expression qui retourne une chaîne. Cet argument peut inclure des valeurs littérales, des fonctions et des variables concaténées.Peut inclure des valeurs littérales concaténées, des fonctions et des variables. Pour plus d'informations, consultez Expressions (Transact-SQL).Pour plus d'informations, consultez Expressions (Transact-SQL).

Remarques Remarques

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.Une chaîne peut comporter 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.Les chaînes plus longues sont tronquées. Types de données varchar (max) et nvarchar (max) sont tronqués aux types de données qui ne dépassent pas varchar (8000) et nvarchar (4000) .thé varchar (max) et nvarchar (max) les types de données sont tronqués en types de données qui ne sont pas plus grands que varchar (8000) et nvarchar (4000).

L'instruction RAISERROR peut également être utilisée pour renvoyer des messages.RAISERROR peut également être utilisé pour renvoyer des messages. Il présente trois avantages par rapport à l'instruction PRINT:RAISERROR présente ces avantages par rapport à PRINT:

  • RAISERROR prend en charge la substitution d'arguments dans un message d'erreur, grâce à un mécanisme similaire à la fonction printf de la bibliothèque de langage C standard.RAISERROR prend en charge la substitution d’arguments dans une chaîne de message d’erreur en utilisant un mécanisme inspiré de la fonction de la bibliothèque standard du langage C.

  • RAISERROR peut spécifier un numéro d'erreur unique, une gravité et un code d'état en plus du message texte.RAISERROR peut spécifier un numéro d'erreur unique, une gravité et un code d'état en plus du message texte.

  • RAISERROR peut être utilisé pour renvoyer des messages définis par l'utilisateur à mesure qu'ils sont créés par la procédure système stockée sp_addmessage.RAISERROR peut être utilisé pour renvoyer des messages définis par l'utilisateur créés à l'aide de la procédure stockée système sp_addmessage.

ExemplesModèles

À.À. Impression conditionnelle (SI EXISTE)Exécution conditionnelle de print (IF EXISTS)

L'exemple suivant utilise l'instruction IMPRESSION pour renvoyer un message sous condition.L'exemple suivant utilise le IMPRESSION instruction pour retourner conditionnellement un message.

IF @@ OPTIONS & 512 <> 0
IMPRESSION Cet utilisateur a SET NOCOUNT activé. & # 39 ;;
AUTRE
IMPRIMER Ne pas utiliser lorsque SET NOCOUNT est désactivé. & # 39 ;;
ALLER  

B.B. Construire et afficher une chaîneConstruire et afficher une chaîne

L'exemple suivant convertit les résultats de la fonction AVOIR UN RENDEZ-VOUS dans le type Nvarchar et concatène avec un texte littéral pour retourner en utilisant IMPRESSION.L'exemple suivant convertit les résultats de la AVOIR UN RENDEZ-VOUS fonctionner à un Nvarchar type de données et le concatène IMPRESSION.

- Construire le texte du message en concaténant
- des chaînes et des expressions.
N ° IMPRESSION Ce message a été imprimé sur & # 39;
+ RTRIM (CAST (GETDATE () AS nvarchar (30)))
+ N & # 39;. & # 39 ;;
ALLER
- Cet exemple montre la construction du texte du message
- dans une variable puis en le passant à PRINT.
- Cela était requis dans SQL Server 7.0 ou version antérieure.
DECLARE @PrintMessage nvarchar (50);
SET @PrintMessage = N & # 39; Ce message a été imprimé sur & # 39;
+ RTRIM (CAST (GETDATE () AS nvarchar (30)))
+ N & # 39;. & # 39 ;;
PRINT @PrintMessage;
ALLER  

Exemples: Azure SQL Data WarehouseAzure SQL Data Warehouse et Entrepôt de données parallèleEntrepôt de données parallèleexemples: Azure SQL Data WarehouseAzure SQL Data Warehouse et Entrepôt de données parallèleEntrepôt de données parallèle

C.C. Impression conditionnéeExécution conditionnelle de print

L'exemple suivant utilise l'instruction IMPRESSION pour renvoyer un message sous condition.L'exemple suivant utilise le IMPRESSION instruction pour retourner conditionnellement un message.

IF DB_ID () = 1
La base de données actuelle est la base de données maître. & # 39 ;;
AUTRE
IMPRIMER N ° La base de données actuelle n'est pas maîtresse. & # 39 ;;
ALLER  

Voir aussiVoir également

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

<! – ->

Commentaires

Laisser un commentaire

Votre commentaire sera révisé par les administrateurs si besoin.