2011-04-22 90 views
6

是否可以讓一個sql腳本使用外部定義的變量?MySQL:在腳本中使用環境變量

例如我有以下腳本:

UPDATE mytable 
SET valid = 0 
WHERE valid = 1 

,我有過mysql命令行多次運行,每一個不同的表名。

我想是這樣的:

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

這可能嗎?

+0

如果你使用一些語言中它會很容易! – Sourav 2011-04-22 13:02:35

+0

我試圖做到純粹的mysql/DOS模式... :( – Don 2011-04-22 15:24:59

回答

5

踢腳線周圍的環境變量,爲什麼不:

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

是否有類似的程序在Windows/DOS? – Don 2011-04-22 15:23:28

+1

Google(「Windows sed」)發現http://gnuwin32.sourceforge.net/packages/ sed.htm – VoteyDisciple 2011-04-22 18:41:35