Hi Erik,
ich kürz mal alles etwas ein :-)
Niemand hat gleich als Crack angefangen, auch ich nicht... (indirektes Eigenlob stinkt nicht ;-))
okay, ne kurze Beschreibung meines Weges:
mit Access ist man ja in einer Windows-Umgebung, d.h. man kann (ich kann es zumindest auf all meinen PCs) VB-Scripte laufen lassen, die Arbeit verrichten können. Dazu brauch man nicht unbedingt gleich VB6 Pro oder so. Dann gibt es zwei COM+ "Objekte", Active Data Objects (ADO) sowie Active Data Objects Extension for DDL & Security (ADOX)
Mit letzterem hast du besonders flexiblen Zugriff auf die Objekte (Tabellen,views etc) in einer Access-Datenbank und kannst dort auch die Feldinformation (Datentyp, Länge, Genauigkeit) usw. erfahren.
Also habe ich ein VB-Script geschrieben, was mittels ADOX auf meine Quelldatenbank zugreift und habe über eine Auflistung jede einzelne Tabelle in einer Schleife verarbeitet:
Felder erfassen, Quell-Datentypen erkennen
Datentypen korrekt umsetzen Access->Oracle-Daten
SQL-Statements (CREATE TABLE ADD...) erstellen und in eine .sql-Datei speichern. Das habe ich dem Admin zukommen lassen mit Angabe, welches Schema und welche Rechte etc.....
danach habe ich dann mittels dem normalen ADO und der .save Methode die Daten aus jeder meiner Tabellen ("SELECT * FROM tabelleX") im XML-Format als Datei gespeichert.
Der Import in Oracle verlief dann mittels eines vbscriptes, welches die abgelegten XML-Recordsets eingelesen und Datensatz für Datensatz mittels .addNew in das leere Recordsetobjekt der Oracle-Verbindung geschrieben hat.
Ist halt ein selbst zusammenprogrammierter Weg... ich hoffe, mit der Erklärung hier kommst du etwas weiter.
An deiner Stelle würde ich aber wirklich mal analysierend über die alten Datenbanken drüberschauen und deinen Chefs darlegen, was da wie unperformant ist, soweit du das einschätzen kannst und darfst.
Tschö, so far, Frank