[c#]MSSQL Daten in eine Access MDB

TimoP

Grünschnabel
Hallo,

ich habe ein Problem und zwar muss ich eine sql datenbank von einem
MSSQL Server 2005 in eine Access mdb zur laufzeit kopieren d.h.

ich parse eine xml datei in eine sql db und danach möchte ich aus der
sql die daten in die access kopieren

( der kopier vor gang soll aus komaipilitäts gründen noch nach access
sein )

Leider weiß ich nicht genau wie ich in c# dieses realisieren soll habe
sowas bis her unter java gemacht dort war es kein problem

Vielen dank für eure Hilfe
 

Nico Graichen

Erfahrenes Mitglied
Hi,

Ich versteh dein Problem noch nicht so ganz. Du hast eine Xml-Datei, deren Inhalt du in eine SQL Server DB schreibst und anschließend willst du die Daten noch in eine Access DB schreiben? Hab ich das so richtig verstanden?

Wenn ja:
Nach dem Schreiben in die SQL Server DB brauchst du doch nur eine neue Connection zu erstellen. Dann jedoch zur Access DB und schreibst die Daten da auch weg.

Wenn nein:
Bitte nochmal dein Problem beschreiben! :D
 

TimoP

Grünschnabel
Ich schreibe zu erst eine SQL DB mit sagen wir mal 300 Tausend Artikel voll wenn der vorgang beendet ist müssen die daten alle in eine MDB kopiert werden
 

Norbert Eder

Erfahrenes Mitglied
Erstellen eine MDB-Datenbank

Unter den Referenzen deines Projektes gehst du auf die COM-Lasche und wählst den Eintrag Microsoft ADO Ext. 2.7 for DDL and Security und fügst diese Referenz deinem Projekt hinzu.

Nun kannst du mit folgendem Code eine MDB anlegen:
C#:
using System;
using ADOX;

namespace ConsoleApplication1
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
ADOX.CatalogClass cat = new ADOX.CatalogClass();

cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=D:\\AccessDB\\NewMDB.mdb;" +
"Jet OLEDB:Engine Type=5");

Console.WriteLine("Database Created Successfully");

cat = null;

}
}
}

Daten kopieren

Mittels ADO.NET kannst du nun auf die MDB zugreifen, die notwendigen Tabellen anlegen und die Daten vom SQL Server in die MDB übertragen. Bzw. kannst du als Quelle natürlich auch deine XML-Datei hernehmen.

Eine andere Möglichkeit

Du erstellst dir eine leere MDB mit genau der benötigten Struktur (Tabellen etc.). Diese verwendest du quasi als Vorlage und erstellst vor dem Überspielen der Daten eine Arbeitskopie.

Tja, das sollte dir weiterhelfen.