我使用的是Java的MySQL连接和我有结果提取一个问题:铸造mysql.Array为String []
这是一个必须执行的查询和准备好的声明:
String statement1 = " select sentence from sentences ; ";
PreparedStatement preparedstatement = conn.prepareStatement(statement1);
ResultSet res = preparedstatement.executeQuery();
现在,我试图让一个数组的结果,所以我用:
Array temp = res.getArray("sentence"); //(1)
String[] temp2 = (String[])temp.getArray(); //(2)
(1)返回一个包含一个定位,这是一个逻辑指向服务器上的SQL ARRAY一个mysql.array,和(2)应该d o一个温度类型转换并返回一个String [],但是我得到这个错误
java.sql.SQLFeatureNotSupportedException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at java.lang.Class.newInstance(Class.java:374)
at com.mysql.jdbc.SQLError.notImplemented(SQLError.java:1342)
at com.mysql.jdbc.ResultSetImpl.getArray(ResultSetImpl.java:1226)
at com.mysql.jdbc.ResultSetImpl.getArray(ResultSetImpl.java:1243)
at wikiparse.Wikiparse3.running(Wikiparse3.java:62) // this where I wrote (1) in my java file
at wikiparse.ActivateWikiparse3.main(ActivateWikiparse3.java:27)
任何想法?
我认为在执行'preparedstatement.executeQuery()'后,数据已经在你身边,而不是在服务器端。 – Rugal
什么是表'句子'声明? –
您的代码片段不完整,但假设您在此调用之前调用'res.next()',因为Javadoc指出,您的JDBC驱动程序不支持该操作。 –