MySQL : utilisation de variable session SET
antoinebe
Messages postés
10
Statut
Membre
-
doublequotes -
doublequotes -
Bonjour,
Je viens à vous concernant un script MySQL que j'utilise en shell sous linux et pour lequel je bloque un peu.
Le principe est simple, j'aimerais utiliser des variables de sessions afin d'exécuter une série de requêtes basique :
Cependant la sortie ce fait avec un rajout de l'utilisateur et de la base de donnée, mais sans prendre compte de mes variables :/
Mon utilisateur créé étant donc = @WWW et ma base étant @db
Alors un petit coup de pouce mysql serait bienvenue :)
Je viens à vous concernant un script MySQL que j'utilise en shell sous linux et pour lequel je bloque un peu.
Le principe est simple, j'aimerais utiliser des variables de sessions afin d'exécuter une série de requêtes basique :
SET SQL_MODE="ANSI_QUOTES"; SET @WWW = elia; SET @db = elia; SET @pcw = test; FLUSH PRIVILEGES; CREATE USER '@WWW'@'%' IDENTIFIED BY '@pcw'; FLUSH PRIVILEGES; CREATE DATABASE '@db'; USE '@db'; GRANT ALL ON '@db.*' TO '@WWW' IDENTIFIED BY '@pcw';
Cependant la sortie ce fait avec un rajout de l'utilisateur et de la base de donnée, mais sans prendre compte de mes variables :/
Mon utilisateur créé étant donc = @WWW et ma base étant @db
Alors un petit coup de pouce mysql serait bienvenue :)
3 réponses
-
Je me suis trouvez une alternative en créant un fichier batch temporaire que j'execute ensuite.
L'avantage étant que je déclare mes variables lors de la création de ce fichier, et ainsi les données sont déjà renseignée lors de son execution.
Cependant si quelqu'un voudrait bien m'éclairer et me dire comment les faire prendre en compte :)
J'ai le même problème dans le batch sql, impossible de faire interpréter mes variables de session en valeur -
salut ,
remplace les ' ' par des " ".
tes variables ne sont pas interpretées quand elle sont entourées par des ' '. -
salut,
alors essai en les échappant ,je ne sais pas comment ton code est mais si tu les echappent ==> \" l'echo les affichera au lieu de les interpreter comme delimiteur pour lui.
sa donne un truc comme ça.
echo "SET @WWW = \"elia\";"