2014-11-22 46 views
2

我遇到問題。我有一個查詢檢查一個數據庫表並更新另一個數據庫表。我正在使用MySQL 5.1從兩個數據庫查詢的Java連接字符串

UPDATE dldd.temp,test.temp 
SET test.temp.name = dldd.temp.word 
WHERE dldd.temp.id = test.temp.id 

這是我的SQL語句,它工作正常。現在我想用Java PreparedStatement來執行這個語句。問題是我不知道怎麼寫的連接字符串選擇兩個數據庫即

"jdbc:mysql://localhost:3306/"+dbname+"?characterEncoding=UTF-8" 

什麼應該來代替DBNAME的。我可以在那裏選擇多個分貝。

回答

2

看一看http://dev.mysql.com/doc/connector-j/en/connector-j-reference-configuration-properties.html

如果沒有指定數據庫,則連接是在沒有默認數據庫的情況下進行的。在這種情況下,可以在Connection實例上調用setCatalog()方法,或者在SQL中使用數據庫名稱(即SELECT dbname.tablename.colname FROM dbname.tablename ...)完全指定表名。在沒有指定要使用的數據庫的情況下打開連接通常僅在構建可用於多個數據庫的工具(如GUI數據庫管理器)時纔有用。

+0

謝謝你解決了這個問題。我沒有在那裏指定數據庫並且它正在工作,但是用戶應該在MySQl服務器上擁有所有的PRIVILEGES以這種方式連接。 – 2014-11-22 13:05:51