Laden...
Feowlyn
myCSharp.de - Member
1
Themen
2
Beiträge
Letzte Aktivität
vor einem Jahr
Dabei seit
08.12.2023
Beruf
Fachinformatikerin in Anwendungsentwicklung
Herkunft
NRW
Erstellt vor einem Jahr

Danke für eine zügige Antwort Th69.

Somit wäre DataRelation nur für UPDATE, DELETE und INSERT INTO beinhaltende Methoden?

Das hat mir schon mal sehr viel geholfen. Man wird halt mit Informationen von vorn bis hinten überladen, viele davon sind aber nicht passend oder geeignet.

Code zeigen wird schwierig. Hab ich nicht bei mir, und musste einiges ausblenden 😉

3-Schichten Architektur habe ich schon gelesen. Inklusive Diskussionen dass MVVM nicht für WinForm geeignet ist, oder dass man in Forms.cs schreiben soll/ eben nicht schreiben darf.

Danke dennoch für den Tipp! Meine Anwendung steckt noch in Kinderschuhen.

Meine Form hat aktuell mehrere Methoden für mehrere checkboxen. Erst möchte ich herausfinden, wie ich es funktionieren bekomme. Als Mock sozusagen. Mit Beispieldaten aus Testdatenbank. präzise Aufteilung in 3 Schichten kommt noch, wenn ich richtig damit los lege. Funktionierendes GUI soll mir erstmal zeigen ob Optik und Funktionalität so sind wie ich sie brauche/ vorstelle. Man kann ja immer kompakter und verkapselter schreiben, mehr Klassen und hilfsmethoden erstellen und in Ordnern unterteilen.  Das kommt aber mit fortschreitende Erfahrung und Übung. In Theorie ist es immer viel einfacher als im Praxis, vorallem wenn keiner da ist wer einen zeigt, wie man etwas umsetzen kann, und man nur recherchiert, Bücher liest("Datenbankprogrammierung in Visual C# 2012")  und ausprobiert.

Erste Teil meines Frages hast Du damit sehr gut beantwortet. Magst Du noch mal über letzte Hälfte scrollen, auch wenn es lang war? Ich schätze Deine Zeit und Hilfe.

LG aus Kölner KVB

E.

EDIT:  Ich habe mich absichtlich gegen DataGridView entschieden. Zu DataGridView hab ich auch fünf Billion Antworten und Beiträge gesehen. Alle sagen mir mach doch WPF und mit Nicht Access und MIT DataGridView.

Erstellt vor einem Jahr

Verwendetes Datenbanksystem: Microsoft Access

Hallo Leute,

ich könnte etwas Hilfe gebrauchen. Ich habe einen WinForms GUI mit ListView. Dort möchte ich dann anhand SQL-Abfrage ermittelte, auf bestimmte Bedingung geprüfte Daten für User zur Auswahl darbieten. Benutzer sollte durch checkBox Auswahl zwischen verschiedene Datenstände "filtern" können.

Abfrage und ClickEvent funktioniert, wenn ich Daten aus eine Tabelle abfrage. Sobald ich sie aber mittels JOIN auf Bedingung aus andere Tabelle abfragen möchte, bekomme ich Error(mittlerweile behoben - es lag an einer "reservierten Wort" - dieser Spaltenname ist nun in eckigen Klammern, und stört nicht mehr).

Allerdings bleibt ListView leer. Meine Frage ist (da Infos zu genau solchen Fall sehr unterschiedlich und teils verwirrend sind - erst recht Microsoft Seiten - so Profi bin ich lange noch nicht), Brauche ich da einen oder 2 DataAdapter? Habe ich es richtig verstanden, dass ich 2 DataTables in meinen DataSet packen soll? Laut andere Quellen brauche ich sogar DataRelation. In mein Access Datenbankschema sind die 2 Tabellen über eine Zwischentabelle gebunden um "n zu m" Beziehung zwischen 2 Tabellen zu lösen.

Meine ListView ist auf GUI leeres Element und ich fülle es in Code über ClickEvent mit Spalten und Zeilen, sowie mit Daten. Ich habe es nicht über Forms(Entwurd) gemacht, da ich Spalten nicht vordefiniert brauchte.

Dafür mache ich pro "Filteroption" von CheckBox eine Methode. Den Code darin fange ich in try-catch.

Ich mache mit using-Direktive eine OleDbConnection und eine OleDbAdapter, mache dann meine DataSet, fülle es mit adapter Hilfe, setze meine ListView auf Details, adde Spalten und mit foreach (für Zeilen als Subitems) die Zeilen mit .ToString() am Ende. 
Danach rufe ich diese Methode in dementsprechenden ClickEvent auf.

Leider bin ich immer noch verwirrt mit DataSet und DataTables (nach mehrere Tagen mit Microsoft Seiten- zudem meist Beispiele in DataGridView sind oder dynamisch Spalten erstellen o.ä.).

Mit eine Tabelle und DataSet klappte es super, wie gesagt. Aber ich vermute ich brauche nun zusätzlich dataTables um meine Tabellen darzustellen? Mich verwirrt auch noch, dass adapter nimmt ja 2 Parameter (dataset und "tabellenname" - ist dieser Tabellenname selbst zu geben oder muss es mit Datenbank übereinstimmen? Wenn ich nur Daten aus Tabelle 1 ausgeben will, dennoch die aber mit in Tabelle 3 zu findenden Bedingung abgeglichen werden muss, welche Tabelle gebe ich dann an?

Grunde genommen möchte ich ja sozusagen folgendes erreichen mit SQL-Abfrage:

"zeige mir a,b,c,d,e (aus Tabelle1) wo bedingung ist "GHI" (String-Wert aus Tabelle 3). Und das in listView so ausgeben.

Ich hoffe sehr ihr habt Geduld und Verständnis mit mir, da es ist sehr kompliziert zu Fragen/erklären. Habt ihr eventuell ein Beispiel? (gerne werde ich auch weitere Fragen beantworten, damit wir eine Lösung finden).

Liebe Grüße und Danke im voraus. Und allen eine erholsame Wochenende, bis nächsten Freitag werde ich meine Anwendung auf der Reihe bekommen 😉

E.