2016-04-24 64 views
0

我試圖從遠程MySQL數據庫test和用戶test上的Java設置「ALL PRIVILEGES」。這裏是我的代碼片段:在executeUpdate Java中獲取錯誤MySQL MySQL

Class.forName("com.mysql.jdbc.Driver"); 
Connection con = null; 
con = (Connection) DriverManager.getConnection("jdbc:mysql://xx.xxx.xxx.xx:3306/?user=root&password=pswrd"); 

Statement st = con.createStatement(); 
int res = st.executeUpdate("GRANT ALL PRIVILEGES ON test.* TO 'test'@'%' IDENTIFIED BY '12345';"); 

沒什麼特別的。所有的root用戶做工精細的查詢,但在這種情況下,partucular我得到錯誤:

Exception in thread "main" com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Access denied for user 'root'@'%' to database 'test' 

我做了什麼錯?

UPDATE

這裏的answer。所以,這個問題沒有解決......

+0

怎麼來的用戶名讀 '根' @' %'? – randominstanceOfLivingThing

+0

請包括異常的堆棧跟蹤。 –

回答

0

嘗試用

DriverManager.getConnection("jdbc:mysql://hostname:port/dbname","username", "password"); 
0

建立連接請確認「根@ yourHost」(特別是yourHost)由「pswrd」中標識有權限來管理權限在這個數據庫上。

0

嘗試添加主機像這樣的 '測試' @ 'yourhost '

+0

稍加說明會提高答案的質量。 – m02ph3u5