Programmieren - alles kontrollieren 4.934 Themen, 20.613 Beiträge

Delphi & Paradox Datenbanken! Schnelle Hilfe Bitte!

yoursweet666 / 20 Antworten / Flachansicht Nickles

Ich programmiere grad ein Programm zur verwaltung einer Paradox-Datenbank und ich habe nun ein Problem. Ein Eintrag, der in die Datenbank soll, generiere ich automatisch und er steht im Moment unter DBText.Caption Von dort aus wird er aber nicht in die Datenbank übernommen, wenn ich Table1.Post ausführe.
Meine Frage ist nun:
In welche Eigenschaft von DBText muss ich diesen automatisch generierten String schreiben, damit das nicht passiert?

bei Antwort benachrichtigen
SQL + Sortieren Borlander
SQL + Sortieren yoursweet666
Indizes Borlander
Indizes yoursweet666
Borlander yoursweet666 „Indizes“
Optionen
Genau das mit dem =
Dann würde ich von ein einer lokalen Datenbank wie Paradox (über die BDE) absehen, sowas lässt sich später schlecht erweitern (z.B. die Suche im Datenbestand über weitere PCs). Nimm lieber ein Datenbanksystem wie MySQL, das kannst Du auch auf dem Arbeits PC unter Windows laufen lassen, kommen weitere Rechner hinzu kannst Du das Programm problemlos auch auf diesen laufen lassen, und über Netzwerk auf die DB zugreifen.

Mit entsprechenden Komponenten (gibt es auch als Freeware) kannst Du mit Delphi problemlos auf die DB Zugreifen und sogar die Standard-Komponenten zur Datenei/Ausgabe verwenden.


pro Ausleihe wird ein neues Datenbakfeld
Ich vermute mal Du meinst ein Datensatz?!
Für jede Ausleihe ein neues DB-Feld anzulegen wäre grosser Schwachsinn!

Sagt Dir der Begriff RDMS etwas?
Du braucht für solche Vorhaben mehrere Tabllen, die zur Abfrage untereinander Verknüpft werden...

und irgendwann ist dann die Dantenbank ausgeschöpft
Sollte mit einem DB-Server wie MySQL nicht so schnell passieren. Nickles.de läuft z.B. auch mit MySQL und hier findest Du über 100.000 angemeldete User und mindestens 3 mal soviele Postings - das müsste also wirklich ausreichen.

Ich kann mir vorstellen, dass das relativ schnell der Fall sein könnte wenn ich nicht erneut auf Feld 1 schreiben kann, was er leider nicht automatisch macht.
Spielst Du damit auf den frei werdenen Speicherplatz nach dem Löschen von Datensätzen an? Um das Problem zu umgehen kann man die Datenbank regelmäßig Reorganisieren (teilweise auch unter anderen Bezeichnungen zu finden)

das primäre Problem ist, dass irgendwann der LongInt als Primary Key verbraucht ist und wenn fleißig ausgeliehen
Ich schließe aus dieser Aussage, dass Du ein AutoInc Feld als PrimärSchlüssel (AusleihID?) verwendest. Wenn Du bedenken hast das der Wertebereich nicht ausreicht, nimm einfach einen Feldtyp mit größerem Werte - LongInt (32Bit) sollte mit 2Milliarden Ausleihvorgängen allerdings mehr als ausreichen, damit kann jedes der 15.000 Bücher 280.000 mal ausgeliehen werden. Werde alle Bücher jeden Tag lang für die Dauer eines Tages verliehen reicht das immer noch für über 700 Jahre.

was ich mit einer Sortierung verbinden will
Also IHMO wäre es bei den Ausleihvorgängen am Sinvollsten nach Datum zu sortieren. Der Primärschlüssel (AusleihID) wird eigentlich nur zur eindeutigen Identifikation der Datensätze benötigt.

Irgendwie habe ich das Gefühl, dass wir aneinander vorbeireden...
Das Gefühl hatte ich auch schon...
Achtung, nicht beleidigt sein:
Irgendwie beschleicht mich allerdings auch der Verdacht das Du Dich nicht sher intensiv mit Datenbanken beschäftig hast. Das ist nicht schlimm, denn Datenbanken sind ein recht komplexes Thema, in diesem Fall solltest Du nachfragen, wenn Dir irgendwas nicht ganz klar ist. Werde Dir auch gerne weiterhin mit Rat und Tat zur Seite stehen.

Ich soll ein Programm [...] schreiben
Hört sich nicht besonders freiwillig an. Will auch nicht neugierig sein, aber ich habe die Vermutung, dass Du bei einer öffentlich Einrichtung arbeitest?


CU Borlander
bei Antwort benachrichtigen
Indizes yoursweet666