我想我的MySQL服務器上執行這樣的事情:我可以在JDBC準備的查詢中使用多個語句嗎?
SET @id=(SELECT id FROM lookupTable WHERE field=?);
(SELECT * FROM table2 WHERE [email protected])
UNION
(SELECT * FROM table3 WHERE [email protected])
UNION
(SELECT * FROM table4 WHERE [email protected]);
也能正常工作從控制檯,而不是從我的Java的PreparedStatement。它在';'處引發一個語法錯誤的異常分開陳述。我喜歡這個變量,因爲我不必重複查找子句,但如果有必要,我可以重寫它。與UNION子句相同的JOIN也有些尷尬。
感謝,
約書亞
正如@ddimitrov所說,這似乎不可能直接。我沒有嘗試'PreparedStatement.addBatch()'。存儲過程也可能適用於此。 – 2010-08-28 03:52:33
如果您對其他供應商感興趣,那麼CUBRID數據庫支持此功能。看到這個論壇帖子http://www.cubrid.org/forum/534638。 – Eye 2012-12-31 02:17:04