Eine Datenbank ohne zusätzliche Datei

Für Themen zu Datenbanken und Zugriff auf diese. Auch für Datenbankkomponenten.
Antworten
eXtense
Beiträge: 2
Registriert: Mo 30. Apr 2012, 16:21

Eine Datenbank ohne zusätzliche Datei

Beitrag von eXtense »

Hallo,
ich habe (noch) eine Exceltabelle mit ca 6000 Datensätzen à 3 Spalten. Es handelt sich um Abkürzungen mit jew. einer weiteren Spalte für die ausgeschriebene Bedeutung und einer für eine Erklärung.
Ich möchte mir hierraus jetzt mit Lazarus, ein unter Ubuntu und Windows lauffähiges Tool erstellen, welches mir bei der Eingabe einer Abkürzung sofort Bedeutung und Erklärung ausspuckt.
Das Suchkonzept an sich ist ja auch kein weiteres Problem.
Allerdings möchte ich, dass zumindest das Kompilat für Windows aus lediglich einer ausführbaren Datei besteht. Nicht noch zusätzlich eine Excel Datei oder eine Datenbank.
Ist sowas irgendwie realisierbar, wenn ja wie?
Ich kenne mich auf dem Gebiet Datenbanken etc. leider nicht aus. Ich wollte mich mal in MySQL einarbeiten, aber ist das hierfür dienlich? Brauche ich da nicht auch eine zusätzliche Datei?

Grüße,
eXtense

MmVisual
Beiträge: 1579
Registriert: Fr 10. Okt 2008, 23:54
OS, Lazarus, FPC: Winuxarm (L 4 FPC 3.2.2)
CPU-Target: 32/64Bit

Re: Eine Datenbank ohne zusätzliche Datei

Beitrag von MmVisual »

Exportiere die Daten als CSV Datei.
Dann öffne die Datei mittels Texteditor, markiere alles und kopiere das in die Zwischenablage

Dann mache Dir in Lazarus ein Formualr auf, dort ein TMemo rein und darin den Text einfügen.
Das TMemo.Visible := False machen.

Nun hast Du den Text in dem Memo und kannst danach suchen (TMemo.Lines[n]) und ausgeben.
EleLa - Elektronik Lagerverwaltung - www.elela.de

eXtense
Beiträge: 2
Registriert: Mo 30. Apr 2012, 16:21

Re: Eine Datenbank ohne zusätzliche Datei

Beitrag von eXtense »

Hallo,
das klingt ja schonmal recht plausibel und einfach, aber kann ich dann wirklich alle 3 Spalten seperat von einander auslesen?
Denn z.B. ist nicht bei jedem Datensatz die dritte Spalte mit Inhalt gefüllt, da manche Abkürzungen eben keine Erklärung brauchen.

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2805
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: Eine Datenbank ohne zusätzliche Datei

Beitrag von m.fuchs »

eXtense hat geschrieben:ich habe (noch) eine Exceltabelle mit ca 6000 Datensätzen à 3 Spalten.
[...]
Allerdings möchte ich, dass zumindest das Kompilat für Windows aus lediglich einer ausführbaren Datei besteht. Nicht noch zusätzlich eine Excel Datei oder eine Datenbank.
Ist sowas irgendwie realisierbar, wenn ja wie?
Du müsstest die Daten integrieren. Billigste Variante: Aus deiner Exceltabelle lässt du dir viele Zeilen Quellcode generieren, die du dann in eine Unit hinüberkopierst. Das können dann zum Beispiel Recorddefinitionen oder irgendwelche Objekte sein, die erzeugt und an eine Liste gehangen werden.

Alternativ kannst du auch RAM-gestützte Datenquellen befüllen oder sowas.
eXtense hat geschrieben:Ich kenne mich auf dem Gebiet Datenbanken etc. leider nicht aus. Ich wollte mich mal in MySQL einarbeiten, aber ist das hierfür dienlich? Brauche ich da nicht auch eine zusätzliche Datei?
MySQL benötigt eine ganze Menge Dateien. Alternativ gibt es SQLite, da müsstest du aber immer noch drei Dateien ausliefern: dein Programm, die SQLite-Bibliothek und die Datenbankdatei.

hth
Micha
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

creed steiger
Beiträge: 958
Registriert: Mo 11. Sep 2006, 22:56

Re: Eine Datenbank ohne zusätzliche Datei

Beitrag von creed steiger »

http://sourceforge.net/projects/lazmxstorage/" onclick="window.open(this.href);return false;


http://www.lazarus.freepascal.org/index ... l#msg61305" onclick="window.open(this.href);return false;


könnte dir weiterhelfen

HOffen
Beiträge: 16
Registriert: Do 15. Mär 2012, 09:19
OS, Lazarus, FPC: Win7 (L 0.9.30.4RC3 FPC 2.6.0)
CPU-Target: 32Bit

Re: Eine Datenbank ohne zusätzliche Datei

Beitrag von HOffen »

Warum nicht einfach die Liste als csv-Datei exportieren und als Resource in die Anwendung einkompilieren? Sollte die Größe der CSV sehr hoch sein, kannst Du sie auch zippen (bei Textdateien wie csv erreicht man da eine ganze Menge) und zur Laufzeit die gepackte Datei aus den Resources laden und entpacken. Dann kannst du wie gewohnt drauf zugreifen.
"There are 10 kinds of human. Those who understand the binary system and those who don't."

Antworten