如何使用jdbc将整个表写入平面文件?到目前为止,我尝试了以下方法:如何使用jdbc中的ResultSet.getBinaryStream()从所有列中获取值?
Statement statement = connection.createStatement();
ResultSet result = statement.executeQuery("SELECT * FROM tablename");
BufferedInputStream buffer;
FileOutputStream out = new FileOutputStream("flatfile.txt");
while(result.next())
{
buffer = new BufferedInputStream(result.getBinaryStream("????"));
byte[] buf = new byte[4 * 1024]; //4K buffer
int len;
while((len = buffer.read(buf, 0, buf.length)) != -1)
{
out.write(buf, 0, len);
}
}
out.close();
“????”只是我的占位符。我被卡在什么传递作为参数。
什么是你的问题? –
我只是将'????'用“”来获取所有列或者在ResultSet或其他类中是否有另一个函数来获取整行?我只想整行。不只是该记录的一列。我没有数据库连接测试,所以我只是想提前弄清楚,所以我准备好了。 – HarishV
'ResultSet'不提供处理整行的方法。你需要单独处理列。您可能会发现[getMetaData()](http://docs.oracle.com/javase/8/docs/api/java/sql/ResultSet.html#getMetaData--)方法有用。 – GriffeyDog