【问题标题】:No database selected GAE没有选择数据库 GAE
【发布时间】:2014-11-04 16:50:45
【问题描述】:

我正在使用 cloudSQL,当我将网站部署到生产环境时,我不断收到“未选择数据库”的错误消息。

我上传到 cloudsql 的转储中有一行“USE mydb”,我必须对我的数据库调用“use mydb”,每个查询都有效。

有人知道为什么吗?或者如何解决它

java.sql.SQLException: No database selected
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1074)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4096)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4028)
    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2490)
    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2651)
    at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2739)
    at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2149)
    at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2313) 

【问题讨论】:

  • 贴出你的生产开发数据库连接代码。

标签: java mysql google-app-engine google-cloud-sql


【解决方案1】:

要么将数据库设置为 jdbc 连接字符串的一部分,例如 jdbc:google:mysql://your-project-id:your-instance-name/YOUR_DATABASE_NAME,要么使用 Connection.setCatalog() 切换到它。正如MySQL Docs 中所述,您不能通过 JDBC 将USE db 语法与 MySQL 一起使用。

【讨论】:

    猜你喜欢
    • 2019-09-05
    • 1970-01-01
    • 1970-01-01
    • 2016-04-14
    • 2017-06-10
    • 1970-01-01
    • 1970-01-01
    • 2013-05-01
    • 1970-01-01
    相关资源
    最近更新 更多