Jede Abhilfe für Java ResultSet Einschränkung
-
07-07-2019 - |
Frage
Ich mache eine Datenbank Migrationsarbeit. Ich habe eine Datenbank in MSSQL zu MySQL-Datenbank zu kopieren. Es war möglich, mit einem kleinen Java-Programm zu kommen bis zu Tisch stucture von MSSQL zu MySQL-Datenbank zu kopieren. Jetzt muss ich alle Daten von MSSQL zu MySql kopieren. Ich habe versucht, mit resultset in Java alle Daten aus einer Tabelle zu erhalten, aber dann könnte es nur einen kleinen Teil der Daten holen. Gibt es eine alternative Lösung, die alle Daten aus der Tabelle resultSet oder auf eine andere ähnliche Struktur zu erhalten, die ich möglicherweise verwenden, kann die gleichen Daten in MySQL Db einzufügen. Es gibt mehr als 25,00,000 Datensätze für eine Tabelle.
Lösung
Ein JDBC-Ergebnismenge sollte im Prinzip können Sie die entirity einer großen Abfrage-Ergebnis wiederholen.
geht jedoch über Java möglicherweise nicht der effizienteste Ansatz sein. Bulk-Export in eine Datei und Bulk-Import kann der Weg zu gehen. Es scheint, dass MS hat einen bcp Dienstprogramm, das die Ausfuhr tun kann.
Andere Tipps
Der beste Weg, um eine Datenbank-Migration zu erreichen, wie Sie beschreiben, ist zu verwenden und ETL-Tool - es gibt einen guten Überblick über ETL hier:
http://en.wikipedia.org/wiki/Extract,_transform,_load
Es gibt keinen Grund, warum Sie nicht, dies zu tun mit JDBC der Lage wären, und so, wenn Sie setzt auf Roll Ihres eigene Bitte näher auf den ‚nur einen kleinen Teil der Daten holen könnte‘:
- Was ist die Abfrage, die Sie ausführen?
- Sie sind eine Ausnahme zu bekommen?
- die JDBC-Treiber verwenden Sie MS-SQL zu verbinden?