使用AWS Java SDK在AWS红移中创建表
我正在尝试使用JavaSDK在AWS红移中创建一个临时表使用AWS Java SDK在AWS红移中创建表,java,amazon-web-services,amazon-redshift,Java,Amazon Web Services,Amazon Redshift,我正在尝试使用JavaSDK在AWS红移中创建一个临时表 // Redshift JDBC 4.1 driver: com.amazon.redshift.jdbc41.Driver String command = "CREATE TABLE test (FirstName varchar(255));" Class.forName("com.amazon.redshift.jdbc41.Driver"); conn = DriverManager.getConnection(dbUR
// Redshift JDBC 4.1 driver: com.amazon.redshift.jdbc41.Driver
String command = "CREATE TABLE test (FirstName varchar(255));"
Class.forName("com.amazon.redshift.jdbc41.Driver");
conn = DriverManager.getConnection(dbURL, props);
stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(command);
运行此代码时,成功创建了表,但在返回时抛出了一个错误
com.amazon.dsi.dataengine.impl.DSISimpleRowCountResult cannot be cast to com.amazon.dsi.dataengine.interfaces.IResultSet
如果我使用一个返回某些内容的命令,那么一切都将正常工作,例如
"Select * FROM test;"
"SELECT * FROM test LIMIT 0;"
我在AWS自述中没有看到任何关于这个问题的文档,也没有看到关于这个问题的其他堆栈溢出问题。在我看来,驱动程序中有一个特殊的类,用于在语句中没有返回不能转换为ResultSet类的内容时使用
红移驱动程序版本为1.1.13.1013
任何帮助都将不胜感激 我也有同样的问题。你可以很容易地解决这个问题。而不是
stmt.executeQuery(command);
请试一试
stmt.execute(command);