2015-05-18 25 views
-4

如果我的數據庫連接在託管時不需要她的名字,我只需要一個主機名就可以做什麼。但是,當您嘗試通過連接:不使用名稱連接到數據庫

<beans:bean id="dataSource" 
     class="org.springframework.jdbc.datasource.DriverManagerDataSource" 

     p:url="jdbc:mysql://mysqHostName.pl" 
     p:driverClassName="com.mysql.jdbc.Driver " p:username="user" 
     p:password="password"> 
</beans:bean> 

我有exeception:

java.sql.SQLException: No database selected 
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:998) 
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3835) 
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3771) 
    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2435) 
    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2582) 
    at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2535) 
    at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1911) 
    at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2145) 
    at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2081) 
    at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2066) 
    at .......................................................................... 

當我添加DATEBASE名字我exeception

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Access denied for user 'user'@'%' to database 'xxxxxx_baza' 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) 
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) 
    at java.lang.reflect.Constructor.newInstance(Unknown Source) 
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:389) 
    at com.mysql.jdbc.Util.getInstance(Util.java:372) 
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:980) 
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3835) 
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3771) 
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:870) 
    at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1659) 
    at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1206) 
    at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2239) 
    at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2270) 

回答

0

p:url="jdbc:mysql://mysqHostName.pl"看起來頂多半信半疑 - 這應該指向你的數據庫。你需要修改它作爲你的MySQL數據庫的URL,我假設你是從你選擇的驅動程序獲得的數據庫引擎。

0

錯誤在於用戶沒有對數據庫的訪問權限。 授予數據庫用戶權限。