Maison > base de données > tutoriel mysql > Comment puis-je utiliser efficacement les variables de script dans psql ?

Comment puis-je utiliser efficacement les variables de script dans psql ?

Patricia Arquette
Libérer: 2025-01-15 09:41:43
original
753 Les gens l'ont consulté

How Can I Use Script Variables Effectively in psql?

Utilisation de variables de script dans psql

psql (client PostgreSQL) vous permet de créer et d'utiliser des variables de script à l'aide de la commande set. Pour définir une variable, précisez le nom et la valeur au format suivant :

<code>\set variable_name value</code>
Copier après la connexion

Par exemple, pour créer une variable nommée "mavariable" avec une valeur de "valeur" :

<code>\set myvariable value</code>
Copier après la connexion

Vous pouvez ensuite remplacer la variable dans une requête, une table ou une condition, par exemple :

<code>SELECT * FROM :myvariable.table1;</code>
Copier après la connexion

ou

<code>SELECT * FROM table1 WHERE :myvariable IS NULL;</code>
Copier après la connexion

À partir de psql 9.1, les variables peuvent également être développées entre guillemets :

<code>\set myvariable value 

SELECT * FROM table1 WHERE column1 = :'myvariable';</code>
Copier après la connexion

Dans les versions antérieures de psql, si vous souhaitiez utiliser une variable comme valeur dans une requête de chaîne conditionnelle, vous deviez inclure des guillemets dans la définition de la variable :

<code>\set myvariable 'value'</code>
Copier après la connexion

Cependant, si vous souhaitez créer une chaîne à partir d'une variable existante, vous pouvez utiliser l'astuce suivante :

<code>\set quoted_myvariable '\'' :myvariable '\''</code>
Copier après la connexion

Cela créera deux variables, une avec des guillemets et une sans guillemets, qui pourront être utilisées ensemble dans des requêtes comme celle-ci :

<code>INSERT INTO :myvariable.table1 SELECT * FROM table2 WHERE column1 = :quoted_myvariable;</code>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal