2 Tabellen zu einer zusammenführen, INSERT INTO Fehler

Scumacker

Mitglied
Hallo,

ich muss mehrere Datenbanken mit den gleichen Tabellen zusammenführen. Dazu hab ich mir ein kleines JAVA-Programm geschrieben. Erst importiere ich mit Access 2010 die eine Datenbank in die andere. Da die Tabellen die gleichen Tabellennamen haben, wird automatisch eine 1 hinter die Namen der eingefügten Tabellen geschrieben. Erst werden alle Tabellennamen ausgelesen, dann schaue ich, ob es den gleichen Namen nochmal mit einer 1 dahinter gibt. Wenn ja, wird der INSERT INTO Befehl ausgeführt und anschließend die Tabelle1 gelöscht. Ich bekomme jedoch immer eine Fehlermeldung. "General Error"!
Das Programm sieht so aus:

Java:
import java.net.URL;
import java.sql.*;
import java.util.*;

import javax.swing.text.TabExpander;

class TEST
{
	public static Connection connection; 
	
	public static void main (String args[])
	{
		try
		{
			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

			connection = DriverManager.getConnection("jdbc:odbc:AccessDatenbank", "Name", "Passwort");
			
			List<String> Tablenames = new ArrayList<String>();
			 
			DatabaseMetaData dbmd = connection.getMetaData();
			
		    String[] types = {"TABLE"};
		    ResultSet resultSet = dbmd.getTables(null, null, "%", types);

		   
		    while (resultSet.next()) {
		      Tablenames.add(resultSet.getString(3));
		      
		      //String tableCatalog = resultSet.getString(1);
		      // String tableSchema = resultSet.getString(2)
		    }
		   
		    for (String item: Tablenames){
		    	if (Tablenames.contains(item + "1")){
		    		Statement statement = connection.createStatement();
		    		String sql = "INSERT INTO " + item + " SELECT * FROM " + item + "1";
		    		statement.executeUpdate(sql);
		    		System.out.println(item);
		    		String sql1 = "DROP TABLE " + item + "1";
		    		statement.execute(sql1);
		    	}

		    }
			connection.close();
		} catch(java.lang.ClassNotFoundException e)
		{
			System.out.println("JDBC-ODBC-Treiber nicht gefunden");
		} catch(java.sql.SQLException e)
		{
			System.out.println("Fehler beim Abfragen der Datenbank");
		}
	}
	
	
}


Ich bitte um Hilfe! Ich mach da schon seit drei Tagen rum und es klappt einfach nicht!! :(
 

Scumacker

Mitglied
Danke für die schnelle Antwort,

aber daran kanns nicht liegen. Der Fehler ist schon beim INSERT INTO. Das löschen alleine funktioniert!
Wenn ich das SQL-Statement in Access ausprobiere funktioniert es auch! Aber da müsste ich es eben für alle Tabellen einzeln machen und immer die Tabellennamen in dem Statement von Hand ändern. Ich verstehe nicht, warum es nicht funktioniert.

Grüße
 

parabool

Bekanntes Mitglied
Wenn die Tabellen einen primärschlüsseln haben dann kommt es beim insert bei Datensätzen mit gleichen ps in Quell - und >Zieltabelle (autoincrement?) vllt. zur kollision. Allerdings bei der unspez. Fehlermeldung...
 

Scumacker

Mitglied
Was mich eben verwirrt ist, dass der SQL Befehl funktioniert, wenn ich ihn im Access teste.
Also kann es doch an dem nicht liegen??!!

Vielleicht hat ja jemand ne andere Idee, wie ich zwei Datenbanken zusammenführen könnte. Wie ich es mache ist eigentlich egal. Es sollte eben funktionieren. :)

Danke
 

Evil-Devil

Top Contributor
Ich würde eher den Weg einschlagen die Tabellen Definitionen in einer dritten Datenbank zu erzeugen und dann jede zu importierende Datenbank einbinden und entsprechende Insert Select Statements zu fahren.

Allerdings wirst du mit den Primärschlüsseln ein Problem bekommen. Oder gibt es keine eindeutigen IDs?


//edit: Beitrag Nr 500 ^^
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
I Oracle Wie ermitteln, welche Benutzer-(!)Tabellen in einer DB sind? Datenbankprogrammierung 1
J Mit einer Abfrage Worte suchen die in Zwei Tabellen enthalten sind Datenbankprogrammierung 5
J Tabellen auflisten, die in einer Datenbank enthalten sind Datenbankprogrammierung 16
G 2 Tabellen in einer 1:n Verbindung Datenbankprogrammierung 2
W Auslesen von Tabellen einer MYSql Datenbank Datenbankprogrammierung 25
S Tabellen auslesen in einer DB Datenbankprogrammierung 14
OnDemand Daten auf mehrere Tabellen aufteilen oder Spalten nutzen Datenbankprogrammierung 2
Ataria SQLite Werte aus zwei Tabellen zusammenführen Datenbankprogrammierung 8
I H2 - GUI Tool.... sehe aber keine Tabellen Datenbankprogrammierung 2
Zrebna Tabellen-Erzeugung via Hibernate ignoriert 'CascadeType' settings Datenbankprogrammierung 1
H JDBC Tabellen ausgeben Datenbankprogrammierung 8
Kirby.exe Tabellen Zeilen combinen und splitten Datenbankprogrammierung 3
N Hibernate Entitäten bei Selects aus 2 Tabellen Datenbankprogrammierung 7
M Sql Tabellen erstellen Datenbankprogrammierung 3
F Tabellen automatisch erstellen wenn sie nicht existieren Datenbankprogrammierung 6
C Mapping mit Annotations von 2 Tabellen Datenbankprogrammierung 22
W Problem mit Insert in zwei Tabellen Datenbankprogrammierung 8
L Join zweier Tabellen in SQL Datenbankprogrammierung 2
P JSP - Daten aus 2 Tabellen in eine neue Tabelle einfügen Datenbankprogrammierung 1
H Brauche Hilfe beim Mappen von 3 Tabellen a 1:n mit hbm.xml. Datenbankprogrammierung 34
D JPQL- Query über mehrere Tabellen Datenbankprogrammierung 7
feinperligekohlensaeure MySQL Dynamische Tabellen. Wie kann man es besser machen? Datenbankprogrammierung 3
O HSQLDB Eine Entität, mehrere Tabellen Datenbankprogrammierung 8
O JDBC Daten in zwei Tabellen mit zwei foreach-Schleifen einfügen (insert into) Datenbankprogrammierung 1
D Count(*) auf 2 Tabellen anwenden Datenbankprogrammierung 7
D MySQL Many to Many Tabellen in Java abbilden? Datenbankprogrammierung 4
V SQLite 2 Tabellen vergleichen und nur Unterschiedliche Sätze rausgeben. Datenbankprogrammierung 31
F Tabellen verbinden Datenbankprogrammierung 13
L0MiN Wie kann ich eine bestimmte Seite aus verschiedenen Excel-Tabellen in eine neue Exceldatei kopieren? Datenbankprogrammierung 1
U Kann die Tabellen nicht finden Datenbankprogrammierung 0
D umschalten zwischen verschiedene Tabellen Datenbankprogrammierung 1
U SQLite Für mich etwa komplexe Abfrage via 2 Tabellen Datenbankprogrammierung 5
E Kann man, wenn man in DB2 Tabellen erstellt hat für dessen auch einen Command-File erstellen? Datenbankprogrammierung 1
M JDBC Tabellen mit Boolean Spalten können nicht erstellt werden. DB Updaten - wie? Datenbankprogrammierung 6
T Tabellen von nicht mehr vorhandenen Entities werden generiert Datenbankprogrammierung 0
J MySQL Workbench Tabellen werden verschoben Datenbankprogrammierung 1
M MySQL Tabellen dynamisch erstellen Datenbankprogrammierung 12
T Ähnliche Wrapperklassen + DB-Tabellen Datenbankprogrammierung 1
K HSQLDB Einzelne Tabellen abfragen? Datenbankprogrammierung 4
T Tabellen Alias Datenbankprogrammierung 7
M MySQL Insert über mehrere Tabellen Datenbankprogrammierung 7
J Tabellen in Tabellen finden Datenbankprogrammierung 4
S versionierte Tabellen Datenbankprogrammierung 2
K n:m Tabellen mit Hibernate erstellen Datenbankprogrammierung 1
I Was ist besser: Tabellen oder Spalten Datenbankprogrammierung 1
S MySQL Abfrage über mehrere Tabellen + Einträge werden überschrieben Datenbankprogrammierung 1
M Vergleich von Daten in verschiedenen Tabellen Datenbankprogrammierung 1
C SQL-Statement SELECT über 3 Tabellen Datenbankprogrammierung 5
G 2 Tabellen und ein spezieller Eintrag Datenbankprogrammierung 2
T Fehler beim ausgeben von Tabellen Inhalt Datenbankprogrammierung 9
T 2 Tabellen aus 2 Datenbanken miteinander vergleichen Datenbankprogrammierung 6
I MySQL Vergleich über mehrere Tabellen! Join? Datenbankprogrammierung 6
R PostgreSQL Tabellen hinzufügen, falls nicht vorhanden Datenbankprogrammierung 3
E Tabellen nacheinander auslesen Datenbankprogrammierung 10
D Übersichtliche Zuweisung von Daten in Tabellen Datenbankprogrammierung 17
A Zugriff auf DB-Tabellen mit Objekten Datenbankprogrammierung 3
K SQL tabellen auswahl in jfreechart Datenbankprogrammierung 2
0 Alle Tabellen aus DB lesen Datenbankprogrammierung 2
F Komplexer Tabellen-Join und Ausgabe in Excel Datenbankprogrammierung 17
I Master/Detail Tabellen mit JDBC und Swing Datenbankprogrammierung 10
H Fortlaufende Nummerierung innerhalb mehrerer Tabellen Datenbankprogrammierung 4
G JOIN Abfrage über mehrere Tabellen Datenbankprogrammierung 15
Consuelo Verbinden von zwei Tabellen, foreign key Datenbankprogrammierung 4
O MySQL sql Datei einzelner Tabellen erzeugen (über Java Programm) Datenbankprogrammierung 6
T Kleine Tabellen für schnellere abfragen? Datenbankprogrammierung 3
G SQL Abfrage über mehrere Tabellen Datenbankprogrammierung 28
H SQL Abfrage - zwei tabellen vergleichen. Datenbankprogrammierung 2
R MySQL Unbenutzte Tabellen/Spalten herausfinden Datenbankprogrammierung 7
I mit Java SQL Attribute / Tabellen erstellen Datenbankprogrammierung 17
C SQL String zwei Tabellen vergleichen und gleiche Zeile löschen Datenbankprogrammierung 25
R hibernate Frage zu configFile-Pfad und Groß/Kleinschreibung von Postgres-Tabellen Datenbankprogrammierung 8
F Einzelne Sql- Tabellen sichern (lokal) Datenbankprogrammierung 2
I MySQL - Anzahl Tabellen heraus finden Datenbankprogrammierung 6
B Es werden keine Tupel in Tabellen abgelegt Datenbankprogrammierung 2
S SQL inner join bei >10 Tabellen über 2 Variablen Datenbankprogrammierung 2
S HSQLDB Kopiere Tabellen Datenbankprogrammierung 2
Guybrush Threepwood Nachträgliches Ändern von Variableneigenschaften in (gefüllten) Tabellen Datenbankprogrammierung 3
T DB2 delete/update über 2 Tabellen Datenbankprogrammierung 2
T SQL Abfrage: Zeige alle Values von bestimmten Tabellen Datenbankprogrammierung 11
R Datenbanken, Tabellen normalisieren. Datenbankprogrammierung 1
A Datenbankzugriffe, mehr Tabellen Datenbankprogrammierung 12
oliver1974 JPA, JTable und 2 DB-Tabellen... Datenbankprogrammierung 2
J Starre Datenbankstruktur oder Tabellen bei Bedarf neu erzeugen? Datenbankprogrammierung 5
X Abfrage über 2 Tabellen mit Tücken Datenbankprogrammierung 3
G verbindung 2er Tabellen Datenbankprogrammierung 3
M Auswerten über drei Tabellen Datenbankprogrammierung 2
H Inserts in 2 Tabellen 1:n Datenbankprogrammierung 6
G Mehrere Tabellen abfragen Datenbankprogrammierung 7
M JavaDB/Derby: Tabellen erstellen Datenbankprogrammierung 8
M insert in 2 tabellen Datenbankprogrammierung 7
MQue Metadaten für Tabellen in der Datenbank Datenbankprogrammierung 5
D aus mehreren sql tabellen matchen und sortieren Datenbankprogrammierung 6
G 2 Tabellen zusammenfügen wie? Datenbankprogrammierung 8
G Tabellen-Dokument als Datenbank Datenbankprogrammierung 2
S MySQL: Abfrage auf 2 Tabellen durch join Datenbankprogrammierung 5
Y Hibernate - Mapping der Beziehung zwischen 2 Tabellen Datenbankprogrammierung 2
ARadauer tabellen kommentar ausgeben Datenbankprogrammierung 2
S Mysql abfrage über 2 tabellen. Datenbankprogrammierung 10
Y Hibernate - Werte aus 2 Tabellen laden Datenbankprogrammierung 29
S Postgres und die Ursprungstabelle bei vererbten Tabellen Datenbankprogrammierung 4

Ähnliche Java Themen

Neue Themen


Oben