2011-04-22 6 views
6

Est-il possible de faire un script SQL utiliser une variable définie en externe?MySQL: Utiliser les variables d'environnement dans le script

E.g. Je le script suivant:

UPDATE mytable 
SET valid = 0 
WHERE valid = 1 

que je dois courir à travers la ligne de commande à plusieurs reprises mysql, chacun avec un nom de table différent.

Je voudrais quelque chose comme:

SET table_name=foo 
mysql -uuser -ppassword < myscript.sql 

est-il possible?

+0

il serait facile si vous utilisez certaines langues! – Sourav

+0

J'essayais de faire cela en mode mysql/DOS pur ... :( – Don

Répondre

5

autour des Contournant variables d'environnement, pourquoi pas:

sed 's/mytable/foo/' myscript.sql | mysql -uuser -ppassword 
+0

Y a-t-il un programme similaire sous Windows/DOS? – Don

+1

Google ("Windows sed") trouve http://gnuwin32.sourceforge.net/packages/ sed.htm – VoteyDisciple

Questions connexes