2011-07-29 107 views
3

我正在使用MySql命令工具從我寫的Ruby腳本中查詢數據庫。然而,需要創建一個臨時表的查詢,然後在另一個查詢中,我需要在臨時表上執行一個連接。唯一的問題是每次我調用mysql -h <host> -r <username> -D <database> -e "QUERY"我得到一個新的事務,所以當我嘗試執行我的連接時,臨時表不再存在。MySql命令行:一次執行兩個查詢?

有沒有辦法執行兩個單獨的查詢一個調用mysql命令行工具?

喜歡的東西: mysql -h <host> -r <username> -D <database> -e "QUERY1" -e "QUERY2"

或者是有來存儲我的查詢一些替代的方法是什麼?像在一個文本文件或什麼的?

謝謝

+3

你試過用分號分開它們嗎? – Jacob

+1

你可以執行一個腳本文件 - shell> mysql Devart

+0

謝謝你們的幫助。 –

回答

10

不會「;」訣竅嗎?

mysql -h <host> -r <username> -D <database> -e "QUERY1;QUERY2"

+0

這工作得很好!謝謝。我閱讀了命令行工具的文檔,但沒有看到';'標記爲分隔符。 –

+0

這是一個幸運的猜測;)。另外,如果您要多次查詢臨時表並關心性能,最好創建一個到mysql的連接。然後,您可以只創建一次表並在一個會話中執行所有查詢。 – Binus

+0

我只需要一個小的查詢,我不得不創建一個臨時表,因爲它不是我的數據庫:(感謝您的建議。 –