Willkommen im #Neuland
Login wie bei quake.ingame.de zuvor, die Passwörter aus der alten Datenbank wurden aber gelöscht - einmal hier neu anfordern.
Wer seine E-Mail-Adresse nicht mehr hat oder kennt, bitte eine Nachricht mit Infos schicken o. im Discord melden.

PQ Discord Server: #planetquake                                                                                                                                         Spenden? Hier entlang!

[Anfänger] Fragen zu Datenbanken und oder C/C++ ...

Forum für alles rund ums Coden und web.design - HTML, XHTML, XML, CSS, PHP, ASP, Zugriffsrechten, Mods uvm.
Antworten
CTCooL
Cadavre
Cadavre
Beiträge: 3415
Registriert: Jul 2001
Wohnort: Magdeburg
Steam: CTCooL
Kontaktdaten:

[Anfänger] Fragen zu Datenbanken und oder C/C++ ...

Beitrag von CTCooL »

Also erstmal ein bissel hintergrundinfo:
meine Schwiegermutter fragte mich ob ich ihr nen Kundenverwaltungprog. schreiben könnte. Ich meinte klar kann ich das, es wird wohl ein bisschen dauern, weil ich mich evt. in ein paar sachen einlesen muss.

Nun überlegte ich die ganze Zeit wie ich das am besten bewerkstelligen könnte.
Als erstes kam mir die Idee ne einfache datei anzulegen in der eine komplette zeile der datensatz für einen kunden is und nächste zeile für den nächsten kunden.
Immer wenn sie nen neuen kunden hinzufügt, wird die datei um eine zeile länger.
Um die datensätze auszulesen, wird die datei zum progstart ausgelsesen und die daten perzeile in den entsprechenden bereichen ausgegeben.
Nun kam mir dort das problem, wie mach ich dem program klar das der und der Datensatzteil für das feld bestimmt is ?
Jetzt habe ich ein bissel rumprobiert und fand diese Lösung des Problems leicht umständlich.
Da kam ich auf die idee, das ganze per datenbank zu lösunen. Dazu muss ich sagen das ich von datenbanken null plan habe, ich hab mir eigentlich nur vorgestellt das alles über tabellen gespeichert und angesprochen wird und somit das auslesen einfacher wäre.

Nun googlte ich ein bisschen und kam zu nicht hilfreichen was mir db nulpe helfen könnte. daher dachte ich mir: pq.de coding forum is meine letzte hoffnung ;) und wie man ja weiß stirbt hoffnung zu letzt ;)
So nun zu meinen Fragen und Vorraussetzungen.

Das Programm: läuft unter win, startet bei null, das heißt, man gibt als datensatz name usw. an, klickt auf speichern und daurch wird der datensatz in der db. gespeichrt und in einer listbox angezeigt. klickt man nun auf den namen wird rechts alles wissenswerte zu dem kunden angegeben evt. termine. Das so zu realisieren is kein prob nur der db.teil.

1.) Ich möchte das Prog so schlank wie möglich halten, das heißt es soll nur ne .exe geben und die datenbank als eine datei. demzufolge soll auf dem anderen rechner nichts zusätzlich installiert werden.

1.a) das programm wird nur von einem rechner gesteuert und die "db" liegt eben auf diesem rechner, das heißt ich ich brauche nur lokale zugriffsmöglichkeiten auf die db.

2. Wie genau erstell ich diese "DB", kann ich dazu ne einfache excel und accsess datei werden und diese auslesen ?

3.) Weiß ich nich genau wie ich anfangen soll ^^

das ganze prog soll per c++ realisiert werden. ich habe hier MS VStudio C++ 2010 Express und von Codegear das RAD Studio, quasi C++ Builder & Delphi Builder in einem.

ich würde lieber per c++ builder arbeiten weils schneller gehen würde da schon einige komponenten zu db programmierung vorhanden sind.

vielen dank im vorraus.
Bild
"Holla, das ist mal 'n Käffchen.. Latte Macchiato ist ja auch.. eeh.. italienisch für Errektion!"
CTCooL @ deviantart
#pq.sc2
Nomschta
Rampage
Rampage
Beiträge: 14303
Registriert: Jun 2001
Steam: TomHonks

Beitrag von Nomschta »

outlook? :ugly:

es gibt bibliotheken für sql, aber das schließt natürlich eine installation auf einem server oder zumindest lokal ein.
BildBild Danke an Drasora für ihr Wichtelgeschenk!
MAR hat geschrieben:Führt der durch den Terrence-Hill? :ugly:
zeeno
Uriel
Uriel
Beiträge: 2793
Registriert: Nov 2002
Kontaktdaten:

Beitrag von zeeno »

Du könntest es mit CSV Dateien (was das ist sollte ich dir ja nicht sagen müssen) lösen, aber da bräuchtest du dann mehr Dateien als nur eine (für jede Tabelle eine Datei), da du sonst keine Beziehungen haben kannst (z.B. mehrere Termine für einen Kunden). Aber CSV Dateien sind auch ziemlich lästig und das Abfragen bestimmter Datensätze dauert unter Umständen viel zu lange und da geht wohl die meiste Zeit damit flöten, dass du irgendwelche verrückten Algorithmen schreibst nur um Datensätze zu bekommen.

Es gibt bestimmt Möglichkeiten das ganze mit einer Access Datenbank (es gibt bestimmt auch noch andere Datenbanken die alles in einer Datei speichern können) zu regeln. Dazu sollte es doch die entsprechenden Klassen für C++ geben die das Fetchen der Datensätze etc. regelt.

Schau dir mal das hier an: http://msdn.microsoft.com/en-us/library/cc811599.aspx
Bild

Drum & Bass: Hartes oder Weiches

"Demokratie ist, wenn man sich aussuchen kann wer verarscht." - Hagen Rether
[/CENTER]
Whitey Weiszmann
Wrack
Wrack
Beiträge: 488
Registriert: Nov 2000

Beitrag von Whitey Weiszmann »

Also wenn du dich in das Thema Datenbanken sowieso neu einlesen musst, empfehle ich dir SQLite. Die Engine wird für relativ viele "Offline" Datenbanken verwendet und SQL kann man immer mal gebrauchen. Ein C/C++ Interface kommt auch direkt mit.
Bild
xxx
Bones
Bones
Beiträge: 3074
Registriert: Aug 2003
Kontaktdaten:

Beitrag von xxx »

Cjs3f hat geschrieben:Also wenn du dich in das Thema Datenbanken sowieso neu einlesen musst, empfehle ich dir SQLite. Die Engine wird für relativ viele "Offline" Datenbanken verwendet und SQL kann man immer mal gebrauchen. Ein C/C++ Interface kommt auch direkt mit.
#
und es reicht auch für ~90% der Webanwendungen ohne Probs aus
Bild
Nomschta
Rampage
Rampage
Beiträge: 14303
Registriert: Jun 2001
Steam: TomHonks

Beitrag von Nomschta »

ich kenn mich da ja auch nicht so aus, aber braucht man für sql nicht eine extra anwendung die im hintergrund läuft? der server sozusagen? oder kann man einfach den quellcode einbinden?
BildBild Danke an Drasora für ihr Wichtelgeschenk!
MAR hat geschrieben:Führt der durch den Terrence-Hill? :ugly:
CTCooL
Cadavre
Cadavre
Beiträge: 3415
Registriert: Jul 2001
Wohnort: Magdeburg
Steam: CTCooL
Kontaktdaten:

Beitrag von CTCooL »

schonma vielen dank für eure hilfe, je mehr ich finde um weniger werde ich schlau :/

der gedanke, alles aus ner excel datei zu lesen, wäre doch am einfachsten und bequemsten zu lösen ?

ich glaub ich werd mir doch nen buch zu dem thema zulegen, sieht alles sehr umfangreich aus

€: empfehlungen ?

wobei sql_lite ganz moderat aussieht ... brauch ich dafür auf dem ziel rechner nichts extra installieren ?
Bild
"Holla, das ist mal 'n Käffchen.. Latte Macchiato ist ja auch.. eeh.. italienisch für Errektion!"
CTCooL @ deviantart
#pq.sc2
Whitey Weiszmann
Wrack
Wrack
Beiträge: 488
Registriert: Nov 2000

Beitrag von Whitey Weiszmann »

Das ist ja gerade das Besondere an SQLite: Die gesamte Datenbankengine sowie Datenbankstruktur und die eigentlichen Daten befinden sich in einer Datei, auf der du sämtliche Operationen ausführst.

Ich weiss nicht wie arbeitsintensiv ein C++ Schnittstelle zu einer Exceldatei ist (ich denke mal das wird über COM/#import laufen, oder?).

Wenn du aber sowieso sämtlich CRUD-Operationen (Create, Read, Update, Delete) über deine Anwendungen bereitstellen willst, würde ich SQLite empfehlen. Sobald man die Grundprinzipien und etwas von Normalisierung verstanden hat, werden die Daten zumindest nicht redundant abgespeichert und selbst komplexere Abfragen über mehrere Tabellen (Arbeitsblätter in Excel) sind relativ schnell zu schreiben.

Kannst die ja ein beliebiges Tutorial raussuchen und einfach mal mit dem SQLite Manager (Firefox Addon) oder dem SQLite Administrator (win) 'rumspielen.
Bild
Roughael
Stripe
Stripe
Beiträge: 2498
Registriert: Mär 2002

Beitrag von Roughael »

sqlite lässt sich problemlos mit einer einzigen dll laden, d.h. kein server muss erstellt werden, keine extra exe die laufen muss und nix muss installiert werden.
SQLite ist das beste was du machen kannst.
<-- Ehemaliger TTK-Bandit, bis inquake rumzickte -->

Dict.cc Firefox Addon | Q3Devel | Code3Arena(De) | GameType Revolution | Open Game Libraries
digitus
Uriel
Uriel
Beiträge: 2969
Registriert: Feb 2001

Beitrag von digitus »

Was soll das Programm denn können was mit einem Spreadsheet nicht ginge?
Bild
CTCooL
Cadavre
Cadavre
Beiträge: 3415
Registriert: Jul 2001
Wohnort: Magdeburg
Steam: CTCooL
Kontaktdaten:

Beitrag von CTCooL »

so hab den thread mal ausgebuddelt :D ehr zufällig ;)
Also ich hab das ganze mit c# und access realisiert: Dabei bringt c# schon funktionen mit, mit denen ich auf die access db, mit hilfe von sql statements zugreifen kann.
Ist eigentlich ganz bequem und für die erforderlichen Zwecke ausreichend.

seit februar sitz ich nun dran, da jedesmal wenn ich dran saß neue ideen dazugekommen sind mit statistik auswertung, rechnungen drucken blah blah ^^
Bild
"Holla, das ist mal 'n Käffchen.. Latte Macchiato ist ja auch.. eeh.. italienisch für Errektion!"
CTCooL @ deviantart
#pq.sc2
Antworten