Datenbank mit WindowForms
-
In .NET hat man sehr gute Möglichkeiten bezügliich DB Anbindung.
Ich rate Dir jedoch zu C#, da es um ein wesentliches einfacher ist als C++/CLI.C++/CLI ist nicht C++.
Aus der Ausage, dass Du Windows Forms verwenden möchtest, schliesse ich daraus, dass Du .NET verwenden möchtest und da ist C# erste Wahl.
Gruss Simon
-
C# ist in jedem Bereich besser
Meine Glaskugel verrät mir, dass seine Anwendung in C++.net geschrieben werden muss.
-
AlexanderM schrieb:
C# ist in jedem Bereich besser
Meine Glaskugel verrät mir, dass seine Anwendung in C++.net geschrieben werden muss.
Aha, und wie kommst Du zu den beiden Informationen?
Simon
-
ersteres ist meine persönliche Meinung und das andere, wie gesagt, habe ich aus meiner Glaskugel, die niemals lügt.
-
C# ist in jedem Bereich besser
Viel Freude bei p/invoke und sonstigen Brücken zu unmanaged Code
-
Hi,
danke für eure vielen Rückmeldungen. Leider muss ich wie die Glaskugel schon vorhergesagt hat, die Anwendung in C++ schreiben und mit ADO.Net die Datenbankanbindung realisieren. Ich habe auch eine Menge schon darüber gelesen, aber ich werde daraus leider nicht schlau. Das Problem ist ausch nicht die Datenbank, ich habe schon einen Menge Erfahrung mit MYSQL, Access oder Postgres-SQL, aber ich bin anscheinend zu blöde das mit C++ in Verbindung zu bringen. Daher hoffe ich, dass ich irgendwo ein wenig Hilfe herbekommen.
-
Da bringst Du wirklich was durcheinander:
C++ ist nicht C++/CLI.
C++/CLI ist eine .NET Sprache, daher kann (muss) auch das ganze .NET Framework verwendet werden. Zusätzlich, ein besonderes Feature der Sprache C++/CLI, ist die Interoperabilität zu C++ (native) sehr gut.
Dein Projektsetup sieht also wi folgt aus (aus den Informationen im letzten Post von dir):
- Sprache: Hauptsächlich C++
- Komponente/Technologie zur DB Anbindung: ADO.NET
Zwischen diesen beiden Anforderungen besteht jedoch eine grosse Inkompatibilität. Ich sage nicht das es nicht geht, aber wozu??
Da wirst Du z.B. einen Weg über COM finden, aber wozu??Ich würde das eine oder andere austauschen, damits einfacher geht.
UND: Wenn Du dich entscheidest alles mit .NET zu machen, dann finde ich C++/CLI die falsche Sprache (nicht unmöglich, aber wozu??). Dann würde ich C# bevorzugen.
Gruss Simon
-
Hi,
also meine Situation ist folgende:
Wir haben dieses Semester eine Kurs C++ an der Uni gehabt. Dazu müssen wir jetzt ein Anschlussprojekt abgeben. Unser Projekt ist eine Auftragsverwaltung für einene Copy-Shop. Wir haben also eine GUI, über die Daten eingegeben werden und diese sollen dann in einer Access-Datenbank gespeichert werden.
Am Ende des Kurses haben wir noch zwei Vorlesungen über C++.Net gehabt. Ich habe mir also mit Visual Studio 2005 eine WindowForms-Anwendung erstellt, welche ja unter den Projekten als C++/CLI läuft. Und nun will ich in einem Formular in einige Textfelder Daten eingeben, diese dann in ein DataSet übergeben und von da in die Datenbank schreiben. Ich habe also ein parr Vorgaben bezüglich des Projektes die ich auch einhalten muss. Ich wäre euch sehr verbunden, wenn jemand einen Idee hätte wie ich das realisieren könnte. Leider kann ich nicht C# verwenden, auch wenn das vielleicht einfacher wäre.
Ich bin leider auch schon echt frustriert, weil ich seit fast 2 Wochen nicht wirklich weiterkomme.Pascal
-
Hi,
also ich habe jetzt nochmal ein wenig rumprobiert. Ich habe nun versucht mit der Tool-Box ein BindingSource-Objekt zu erstellen, dieses dann mit der Datenbank verbunden und eine DataSet erstellt. Wie kann ich die Daten im Code denn abrufen und einem Textfeld zuweisen?
Kann ich das überhaupt so direkt machen, oder ist es sinvoller einer Klasse, z.B. Kunde, zu erstellen, den Variablen dieser Klasse den Inhalt der DataSets zuzuweisen und dann erst die die Textfelder mit dem Getter aus der Klasse zu füllen?Pascal
-
Über Datenbankzugriffe in C++, .net oder anderen Konstellationen habe ich leider keine Ahnung, aber ich versuche wenigstens allgemein weiterhelfen zu können:
eine Datenbank macht Sinn, wenn eine große Menge Daten serialisiert und verarbeitet werden soll. Wird die komplette Datenbank im Programm eingelesen und dort verarbeitet, so mag der direkte Zugriff auf einen bestimmten Eintrag schneller verlaufen, aber bei der Verarbeitung des kompletten Datensatzes im Programm dasselbe eher zusammenbrechen.
Trotzdem macht eine gut strukturierte OO bei Datenbankanwendungen viel Sinn.Bsp: wenn du eine komplette Liste deiner Kunden anzeigen möchtest, ist eine Klasse "Kunde" nicht verkehrt, in der du erst mal Vor- und Nachname sowie ID in Objekte speicherst und diese dann in der GUI anzeigen lässt. Soll ein Kunde auf Doppelklick bearbeitet werden, so ist eine weitere Datenbankabfrage nötig: durch die gespeicherte ID kannst du alle weiteren Informationen des Kunden aus der DB abfragen.
Somit hat der Anwender alle Kunden im Blick, das Programm aber bleibt Ress-sparend und die Datenbank macht viel Sinn.Nur wie diese Abfragen aussehen sollen: keine Ahnung.
-
danke für deine Antwort. Ich werde eine Klasse sicherlich realisieren, sobald ich die sache mit den Abfragen hinbekommen habe.
-
Wenns fürs Studium ist, finde ich es OK C++/CLI zu verwenden.
Das bedeuted, die Application ist dann ein reines .NET Assebmbly.Dann würde ich nach Bsp. Code für DB Anbindung suchen, z.B. auf http://www.codeproject.com.
Das kann auch in C# sein, es dürfte nicht schwierig sein, es zu portieren oder wenigstens die Grundmechanismen zu verstehen.Auch MSDN bietet hier gute Hilfe.
Simon
-
Zu Dir Simon,
hör auf mit dem ständigen, nimm C# besser als C++/CLI und C++ ist nicht C++/CLI.
Versuch mal vernünftige Tipps zugegeben.
Und wenn einer das in C++/CLI, was nicht C++ ist, machen muss oder möchte, dann lass ihn das machen.
Wenn einer mit dem Flugzeug fliegen möchte, setze ihnen nicht auf die Bahn.
Ach und noch was, Gruß wird mit ß und nicht mit ss geschrieben.
Reiß Dich mal zusammen Junge, Kopf hoch, wird schon!Und Mut zu C++/CLI was kein C++ ist, lern mal zu programmieren und hör auf mit dem rumspielen, Mensch. C#, C#, C#, ich kann’s nicht mehr lesen.
Nur weil ich kein Fahrrad fahren kann, sag ich doch nicht, dass der Tretroller besser ist.
Ach ja, Code von C# in C++/CLI zu transferieren, C++/CLI was kein C++ ist, ist nicht so leicht wie Du es vielleicht vermutest, da C# an Java angelehnt ist, Java was kein C# ist.
Gruß,
JM
-
Ich mach alles in und mit C#
Hui