LucyLoreley
Grünschnabel
Hallo,
ich habe 2 Datenbanken die ich miteinander vergleichen will.
DB1 = 04; DB2 = 05;
Zuerst will ich vergleichen ob die beiden Datenbanken auch die gleichen Tabellen besitzen, wenn ja dann will ich vergleichen ob in der Tabelle die gleichen Attribute stehen.
Bis zu den tabellen ist das kaum ein problem gewesen hier der Quelltext:
So jetzt müsste ich ja eigentlich die Columns vergleichen doch wie mach ich das
Ich hätte es so probiert:
aber das funktioniert nicht, kann mir jemand helfen? Es wäre sehr dringend!
ich habe 2 Datenbanken die ich miteinander vergleichen will.
DB1 = 04; DB2 = 05;
Zuerst will ich vergleichen ob die beiden Datenbanken auch die gleichen Tabellen besitzen, wenn ja dann will ich vergleichen ob in der Tabelle die gleichen Attribute stehen.
Bis zu den tabellen ist das kaum ein problem gewesen hier der Quelltext:
Code:
privatevoid Compare()
{
ADODB.Connection conn1 = new ADODB.ConnectionClass();
conn1.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Pfad1,"","",0);
ADODB.Connection conn2 = new ADODB.ConnectionClass();
conn2.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Pfad2,"","",0);
ADOX.Catalog cat1 = new ADOX.CatalogClass();
ADOX.Catalog cat2 = new ADOX.CatalogClass();
cat1.ActiveConnection = conn1;
cat2.ActiveConnection = conn2;
//Über die Tabellen in DB1 laufen
foreach(ADOX.Table t in cat1.Tables)
{
// Ein funktion aufrufen in der ich über die Tabellen der DB2 laufe
CompareTables(t, cat2); }
cat1.ActiveConnection = null;
cat2.ActiveConnection = null;
conn1.Close();
// Funktion CompareTables
privatevoid CompareTables(ADOX.Table t, ADOX.Catalog cat)
{
//Über Tabellen in DB2 laufen
foreach(ADOX.Table Tab in cat.Tables)
{
//Tabellenname vergleichen
if(Tab.Name.CompareTo(t.Name) == 0)
{
// Hier muss ich jetzt die Cols miteinander vergleichen
}
}
So jetzt müsste ich ja eigentlich die Columns vergleichen doch wie mach ich das
Ich hätte es so probiert:
Code:
//Über Attribute laufen
foreach(ADOX.Column col in Tab.Columns)
{
if(col.Name.CompareTo(t.Columns.ToString()) == 0)
{
}
}