C# mit Access Datenbank. Ausgabe in WinForms ListView

Feowlyn

Neues Mitglied
Hallo,

da meine Internet Recherchen und bei Bekanntenkreis rumfragen, sowie zahlreiche Versuche in Code meine Problem nicht beantworten können, und ich auch aus Fehlermeldung nicht schlau geworden bin, entschied ich hier nachzufragen.

Ich habe eine WinForms Anwendung, was Daten aus selbst erstellten Access Datenbank zieht, und sie dann in ListView ausgeben soll, damit Anwender eine Zeile auswählen kann. Soweit funktionierte alles super. Aus eine Tabelle mit SQL-Abfrage und mit Bedingung. Aber sobald ich in eine Abfrage in Code zweite Tabelle hinzufüge, bekomme ich einen Error.
Selbstverständlich habe ich meine JOIN mehrfach umgeändert und angepasst, und auch Datenbank wieder alle Verbindungen zwischen Tabellen aufgehoben und neu eingerichtet, nachdem ich alle Datenfelder auf Typ Gleichheit überprüft habe. Daran liegt es nicht, Schreibfehler ist es auch nicht ( Tabellennamen stimmen alle übereinander und sind über richtige Schlüssel verbunden).

Was mich stützig macht, ist dass wenn ich meine Abfrage alleine in Access Datenbank in Abfrageentwurf-Modus ausführe, funktioniert es fehlerfrei und gibt genau das aus was ich mir wünsche. Führe ich aber meinen Code aus, bekomm ich den Error:

Fehler E_FAIL(0x80004005) in IErrorInfo.GetDescription -> Messageboxausgabe aktiv in catch-Block

Zusätzliche Informationen: Das Objekt ist kein ADODB.RecordSet oder ADODB.Record. -> Ohne try-catch Block


Hat jemand eventuell erste Geistesblitze, woran mein Fehler liegen könnte, bevor ich mit Code ausrücke (worin meine Arbietskollege auch kein Fehler erkannte) ?

Ich mache mit using-Direktive eine OLEDbConnection und OleDbAdapter auf, fülle einen DataTable mit Daten und erstelle Spalten und Zeilen für ListView(manuell, nicht über WinForms ListView eingegeben/ vordefiniert). Und dann fülle ich die ListView mit foreach-Schleife.


Danke für eure Zeit.
E.
 
Ein Teil des Problems habe ich gelöst. Es lag an einen "reserved word". Diese Spalte habe ich dann in Eckige Klammern gesteckt. Error ist weg, aber Daten werden immer noch nicht geladen bzw angezeigt.

Es liegt wohl daran, dass ich als Ergebnis Daten aus 2 Tabellen haben möchte, aber unsicher bin wie ich es in Code darstelle.
Brauche ich 2 DataAdapter? Um die 2 Tabellen, woraus ich Daten benötige(in SQL Bedingung Abgleich) in einen DataSet packen, den ich dann in ListView ausgebe?

Irgendwie fehlt mir noch 1 Stück von mein Puzzle.
 
Zurück
Oben Unten