因此,Google Cloud SQL 有一个简洁的功能,您应该能够连接到本地数据库实例以在本地进行调试,如下所述:
我有以下虚拟机争论:
-Xmx512m -javaagent:C:\eclipse\plugins \com.google.appengine.eclipse.sdkbundle.1.4.2_1.4.2.v201102111811\appengine-java-sdk-1.4.2\lib\agent\appengine-agent.jar
-Drdbms.server=local
-Drdbms.driver=com.mysql.jdbc.Driver
-Drdbms.url=jdbc:mysql://localhost:3306/testdb?user=root&password=pass
我已将 msql 驱动程序放在 C:\eclipse\plugins \com.google.appengine.eclipse.sdkbundle.1.4.2_1.4.2.v201102111811\appengine-java-sdk-1.4.2\lib\impl 文件夹中并添加它到类路径。
然而,当运行一个简单的 SELECT 查询(部署在 GAE 上运行良好)时,它会抛出以下异常。
java.sql.SQLException: Table not found in statement [SELECT * FROM SOME_TABLE]
这是有问题的代码片段:
Connection c = null;
try {
DriverManager.registerDriver(new AppEngineDriver());
c = DriverManager.getConnection(MY GOOGLE CLOUD SQL CXN STRING);
PreparedStatement ps = c.prepareStatement("SELECT * FROM SOME_TABLE");
ResultSet rs = ps.executeQuery();
} catch (SQLException e) {
e.printStackTrace();
}
我怀疑它没有意识到它必须在本地连接,我应该检查什么?