したがって、Google Cloud SQL には、ここで説明するように、ローカルでデバッグするためにローカル DB インスタンスに接続できる優れた機能があります。
次の VM 引数があります。
-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();
}
ローカルに接続する必要があることを認識していないと思われます。何を確認すればよいですか?