Jak napisać CAŁĄ tabelę do płaskiego pliku przy użyciu jdbc? Do tej pory próbowałem wykonać następujące czynności:Jak uzyskać wartości ze wszystkich kolumn przy użyciu ResultSet.getBinaryStream() w jdbc?
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();
"????" to tylko mój symbol zastępczy. Utknąłem na tym, co można przekazać jako argument.
Jakie jest Twoje pytanie? –
Czy po prostu zastępuję "????" z "" aby uzyskać wszystkie kolumny lub czy istnieje inna funkcja w ResultSet lub jakiejś innej klasie, aby uzyskać cały wiersz? Chcę tylko całego rzędu. Nie tylko jedna kolumna tej płyty. Nie mam jeszcze łączności z dbem, aby przetestować, więc próbuję to wcześniej ustalić, więc jestem gotowy. – HarishV
'ResultSet' nie dostarcza metod, które dotyczą całego wiersza. Musisz radzić sobie z kolumnami indywidualnie. Przydatna może być metoda [getMetaData()] (http://docs.oracle.com/javase/8/docs/api/java/sql/ResultSet.html#getMetaData--). – GriffeyDog