Autor Beitrag
lstyle
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Do 15.11.07 14:34 
Hallo
ich komme aus dem VBA, Access bereich und versuch mein glück jetzt mit C# =) also folgendes Problem.

ich habe eine .mdb datei auf dem Laufwerk C liegen (c:\datenbank.mdb) wie kann ich jetzt eine neue tabelle in der mdb datei erstellen? und wie kann ich einzelene spalten einer bestehenden Tabelle datensätze reinschreiben??? weil lesen ist kein problem Oo mach ich das am besten mit DataTable????

danke im vorraus ^^

Mfg


Moderiert von user profile iconChristian S.: Topic aus C# - Die Sprache verschoben am Do 15.11.2007 um 14:16
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Do 15.11.07 15:24 
Hallo,

Du solltest von vornherein die "Philosophie" von ADO.NET beachten: Es wird getrennt zwischen der tatsächlichen Datenbank, der Bearbeitung der Daten innerhalb des Programms (d.h. im Arbeitsspeicher) und der Verknüpfung dazwischen. Für den Zugriff auf die DB benötigst Du eine DbConnection; für den "Zwischenspeicher" sind u.a. DataSet und/oder DataTable geeignet (aber auch "jede" andere Datenmenge, z.B. Listen); für die Verbindung dienen vor allem DbDataAdapter und DataReader.

Zusätzlich ist zu berücksichtigen, dass die Db-Klassen allgemein zur Verfügung stehen, aber für jedes Datenbanksystem ein eigener Datenprovider verwendet wird: für Firebird Fb-Klassen, für MS-SQL Server Sql-Klassen, für MySql die MySql-Klassen und für Access/Excel OleDb-Klassen.

Eine Einleitung bekommst Du z.B. über OpenBook VC# Kap.26. Außerdem gibt es gerade für den Datenzugriff sehr viele Klassen, Eigenschaften und Methoden mit vielen Beispielen in der SDK-Doku. Ergänzend weise ich auf passende ConnectionStrings hin.

Arbeitest Du mit Visual Studio? Dann kannst Du direkt in der IDE die Verbindung mit der Datenbank herstellen und Dir automatisch zu einer vorhandenen Datenbank ein typisiertes DataSet mit DataTables sowie DataAdapter (oder TableAdapter) mit geeigneten Befehlen für Select, Insert, Update, Delete erstellen lassen; das Speichern aller Änderungen erfolgt dann einfach mit DbDataAdapter.Update(myDataSet). Aber Warnung: Diese Vorgehensweise erleichtert den schnellen Zugriff und erspart viel Tipparbeit, aber sie erschwert das Verständnis erheblich, weil sehr vieles versteckt im Hintergrund abläuft.

Ohne Visual Studio geht es ganz genauso, aber Du musst alles selbst schreiben. Das sehe ich eher als Vorteil an, weil Du dann weißt, was passiert, und selber steuerst, was wie geschehen soll.

Von der Änderung der Tabellenstruktur aus C# heraus rate ich Dir als Anfänger mit NET/C# ab. (Es geht grundsätzlich über DbCommand und ExecuteNonQuery; aber lerne erst einmal die Verarbeitung der Daten.)

Viel Erfolg! Jürgen