AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi 7 - BDE 32-Bit - Wie eine Datenbank und/oder Alias erstellen ?
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi 7 - BDE 32-Bit - Wie eine Datenbank und/oder Alias erstellen ?

Ein Thema von paule32.jk · begonnen am 3. Sep 2023 · letzter Beitrag vom 18. Okt 2023
Antwort Antwort
johndoe049

Registriert seit: 22. Okt 2006
144 Beiträge
 
#1

AW: Delphi 7 - BDE 32-Bit - Wie eine Datenbank und/oder Alias erstellen ?

  Alt 5. Sep 2023, 12:19
Zitat:
Hallo,
Danke Euch für Euer Feedback !
Ich habe mir aber mal erlaubt, doch mal bissl rumzubasteln und zu stöpseln ...
Es geht mir ja auch dadrum, eine Datenbank zu Haben, die von unbedarften Usern
installiert werden kann - Ihr wisst ja - GAUF - Größter Anzunehmender User Fehler...
Man braucht auch keine Admin Rechte, um die Registry zu wursteln, aber ich habe mal
im Code eine Abfrage eingetragen - sicher ist sicher ...
nur mal so, ein Snippet:
Hast du das auf dem PC mit Delphi 7 getestet oder auch auf einem PC ohne Delphi?

Du kannst bei der BDE nur dann sicher sein, dass es funktioniert, wenn du einen PC ohne Delphi zum testen verwendet. Alles andere ist sinnfrei, weil es falsche Ergebnisse bringt. Man meint, die BDE kann heute noch problemlos verwendet werden, ist aber nicht so.

Delphi selbst sorgt schon dafür, dass die BDE richtig funktioniert.

Übrigens ist Delphi 7 nicht tot. Das funktioniert auch auf Windows 10 und Windows 11. Ist bei sehr alten Projekten noch hilfreich.

Zitat:
Table = Ansammlung von (geordneten/strukturierten) Daten(sätzen),
die per einzeln per Datensatz (Record) zur Verfügung stehen.
Query = Abfrage(sprache), mit denen Datensätze gesucht, gefiltert, geändert,
werden können. Datensätze können aufgeteilt werden, so dass nicht die
gesamten Daten (der Tabelle) in den Speicher des Client gehalten werden
muss. Abfragen werden mit der Skript-Sprache SQL (Structured Query
Language) eingeleitet/abgesetzt.
Index = Als primär-Index für das Suchen verwendet, um die Datenbanl-Anfrage(n)
mittels SQL schneller, und eindeutig zu bestimmen.
Bei Unter/Sub-Kategorien können dann auch sekundär-Indexe erstellt werden.
SQL = Abfrage Skript-Sprache für Queries
Inject = Methoden, um SQL-Anfragen übers Netz zu manipulieren.
Daher sollten alle Queries mit Parameter versehen werden.

Es geht nicht darum, das aus einem Lexikon abzuschreiben. Wir wollen wissen, ob du dich mit SQL auskennst und entsprechende Select, Insert, Updates, etc. erstellen kannst. Bei BDE ist SQL nicht bei allen Datenmodellen notwendig. Bei den xBase kompatiblen Formaten konnte man das früher auch über modellinterne Techniken realiseren. Das ist aber eine veraltete Technik, mit der keine aktuelle Datenbank (OK, vielleicht Access) mehr arbeitet. Spätestens, wenn du beruflich programmiert und noch weitere Programmmierer involviert sind, muss man SQL können.

Wenn du mit veralteten Datenmodellen arbeiten willst, sei es dir gegönnt. Nur wir arbeiten im Heute und nicht in der Vergangenheit.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.395 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Delphi 7 - BDE 32-Bit - Wie eine Datenbank und/oder Alias erstellen ?

  Alt 5. Sep 2023, 13:41
Delphi selbst sorgt schon dafür, dass die BDE richtig funktioniert.
Delphi ändert da nichts. Allerdings verhält sich die BDE auf verschiedenen Rechnern höchst unterschiedlich. Das liegt unter anderem an der Ermittlung des gemeinsamen Speicherbereichs, da an der Stelle auf dem einen Rechner z.B. eine DLL geladen ist und auf dem anderen nicht. Das kann man sich sehr schön anschauen, wenn man mit FastMM die Speicherbelegung visualisiert.

Übrigens ist Delphi 7 nicht tot. Das funktioniert auch auf Windows 10 und Windows 11. Ist bei sehr alten Projekten noch hilfreich.
Es funktioniert noch, allerdings muss man diverse Fehler im Hinterkopf behalten und in den damit erstellten Programmen korrigieren (falsche Randberechnung, unsichtbare Buttons bei gedrückter Alt-Taste, Zeichenfehler mit DoubleBuffered, ...). Wenn man das tut, funktionieren damit erstellte Programme auch gut, aber es ist ein gewisser Aufwand nötig.

Die Installationsdateine für die BDE von Borland gibt es oft nur aus zweifelhaften Quellen.
Das stimmt nicht, selbst bei Delphi 11. Den BDE Installer für RAD Studio 11 gibt es z.B. in den Downloads für registrierte Benutzer. Darin enthalten ist die bdeinst.cab, auch sprachspezifisch. Die braucht man nur auspacken und die enthaltene DLL mit "regsvr32 bdeinst.dll" ausführen, dann wird die Installation gestartet.
Und bei Delphi 7 war der Installer ja auch dabei.

Sollte diese Datei einemal ohne Domain Administrator zu sein und ohne UAC ausgeführt werden und man ausversehen speichern (OK beim beenden des Programms), dann ist die Registry der BDE kaput und man muss die BDE deinstallieren, die Registry Einträge löschen und die BDE dann neu installieren.
Kaputt nicht gerade, aber selbst das Löschen der normalen Einträge hilft dann nicht weiter, denn das Problem ist ja die Virtualisierung älterer Programme. Man muss also die Daten löschen, die im Virtual Store für den einzelnen User gespeichert wurden, weil die eigentliche Stelle nur mit Adminrechten beschreibbar ist.

Die BDE/Paradox geht regelmäßig kaputt...dann muss man die Daten reorganisieren.
Nach einem Programm Absturz kann es sein, dass einige Tabellen weiterhin gelockt sind, dann muss man die P*.lck und P*.net löschen.
Nach einem Rechnerabsturz sind oft die Index Dateien kaputt -> Indexe neu aufbauen
Ja, dafür muss man entsprechende Tools entwickeln und bereitstellen, damit der User das überhaupt selbst machen kann. Trotzdem war das oft ein Fall für den Support, weil die eingebauten Reparaturmethoden es nicht automatisch korrigieren konnten und die Kunden es nicht selbst machen konnten.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!

Geändert von jaenicke ( 5. Sep 2023 um 14:07 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von paule32.jk
paule32.jk

Registriert seit: 24. Sep 2022
Ort: Planet Erde
218 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Delphi 7 - BDE 32-Bit - Wie eine Datenbank und/oder Alias erstellen ?

  Alt 5. Sep 2023, 14:05
@johndoe049

Der Text, den ich geschrieben habe ist nicht aus irgendeinen anderen Internet-Artikel
abgeschrieben - er basiert auf meinen Wissenstanr, der, ich gebs ja zu, 10 bis 20 Jahre
hinterher hinkt.
Damals hatte ich sowohl MySQL mit PHP und anderen DB-System gearbeitet.
Dann kam eine etwas unschöne Zeit, aber das brauch ich ja nicht hier zu schreiben.

Die Programme, die ich bis jetzt programmiert habe sind nicht aus meinen Beruf entstanden.
Somit sind auch viele Projekte, die ich auf git gelagert habe.
Es handelt sich um Hobby-Produktionen, die aus dem mir zur Verfügung stehenden Privileg
hier programmiert habe.

Ich habe nie studiert oder Programmierer gelehrnt - Alles DIYS - und natürlich durch das
durchstöbern des Internets, und Eurer Hilfen - Danke dafür !

Für größere Projekte, die über den Hobby-Niveau hinausgehen bin ich sicherlich nicht der
beste - aber ich mach das aus/mit Freude.
Frag doch einfach
Alles was nicht programmiert werden kann, wird gelötet
  Mit Zitat antworten Zitat
johndoe049

Registriert seit: 22. Okt 2006
144 Beiträge
 
#4

AW: Delphi 7 - BDE 32-Bit - Wie eine Datenbank und/oder Alias erstellen ?

  Alt 5. Sep 2023, 14:27
@johndoe049

Der Text, den ich geschrieben habe ist nicht aus irgendeinen anderen Internet-Artikel
abgeschrieben - er basiert auf meinen Wissenstanr, der, ich gebs ja zu, 10 bis 20 Jahre
hinterher hinkt.
Damals hatte ich sowohl MySQL mit PHP und anderen DB-System gearbeitet.
Dann kam eine etwas unschöne Zeit, aber das brauch ich ja nicht hier zu schreiben.

Die Programme, die ich bis jetzt programmiert habe sind nicht aus meinen Beruf entstanden.
Somit sind auch viele Projekte, die ich auf git gelagert habe.
Es handelt sich um Hobby-Produktionen, die aus dem mir zur Verfügung stehenden Privileg
hier programmiert habe.

Ich habe nie studiert oder Programmierer gelehrnt - Alles DIYS - und natürlich durch das
durchstöbern des Internets, und Eurer Hilfen - Danke dafür !

Für größere Projekte, die über den Hobby-Niveau hinausgehen bin ich sicherlich nicht der
beste - aber ich mach das aus/mit Freude.
In den letzten 10-20 Jahren hat sich bei Softwareentwicklung einiges getan.

Früher war die BDE im Delphi Bereicht Stand der Technik. Fast jeder hat es genutzt, wer es nicht genutzt hat wurde schräg angesehen. Heute ist es genau anders herum. BDE ist das Kennzeichen schlecht hin für veraltete Programmierung, unzufriedene Kunden/Nutzer und unnötige Mehrarbeit beim programmieren.

SQLite ist für kleine Datenbanken heute mit das übliche. Firebird Embedded hat den Vorteil, dass der Umstieg auf den Server relativ einfach möglich ist. Für MsSQL gab/gibt es auch eine embedded Version, die ist aber Lizenzmässig zu komplex um die einfach mal so einzubinden.

Vorteil von SQLite und Firebird: Wenn Delphi 7 zuviel nerft, kann man das problemlos auch mit Lazarus oder Delphi Community verwenden. BDE ist in der Hinsicht eine Einwegprogrammierung, die man nachher wegwirft.

Früher habe ich persönlich mit FoxPro gearbeitet. Heute würde ich das nicht mehr anfassen. Zuviel Zeit geht damit verloren, dass am laufen zu halten und wenn man den Compiler wechselt war die bisherige Arbeit fast komplett wertlos.
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.316 Beiträge
 
Delphi 12 Athens
 
#5

AW: Delphi 7 - BDE 32-Bit - Wie eine Datenbank und/oder Alias erstellen ?

  Alt 6. Sep 2023, 09:13
Moin...

Für welche Datenbank hast du dich entschieden?
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe
Online

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.089 Beiträge
 
Delphi 12 Athens
 
#6

AW: Delphi 7 - BDE 32-Bit - Wie eine Datenbank und/oder Alias erstellen ?

  Alt 6. Sep 2023, 09:25
Ich schweife vermutlich jetzt ab, aber kann sich überhaupt noch jemand an Blackfish SQL erinnern?
Zitat:
Blackfish™ SQL is a high-performance, small-footprint, transactional database. Blackfish SQL
was originally implemented as an all-Java database called JDataStore. This is now called Blackfish SQL
for Java. Blackfish SQL was then ported from Java to C#. The C# implementation is called Blackfish
SQL for Windows.
Hier kommentiert Marco das Ende von Blackfish SQL: BlackFish SQL Gone in Delphi XE, What About a Replacement?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.316 Beiträge
 
Delphi 12 Athens
 
#7

AW: Delphi 7 - BDE 32-Bit - Wie eine Datenbank und/oder Alias erstellen ?

  Alt 7. Sep 2023, 05:53
Moin...

@paule32.jk:
Wir wüßten gern, ob wir dich von der BDE geheilt haben oder ob du in die Tiefe gesprungen bist.

Bitte Ausfüllen:

weiter helfen [ ] ich will nicht mehr [ ]

Geändert von haentschman ( 7. Sep 2023 um 05:56 Uhr)
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.889 Beiträge
 
Delphi 12 Athens
 
#8

AW: Delphi 7 - BDE 32-Bit - Wie eine Datenbank und/oder Alias erstellen ?

  Alt 6. Sep 2023, 09:54
Damals hatte ich sowohl MySQL mit PHP und anderen DB-System gearbeitet.
Nimm das ! MARIADB! MariaDb ist eine Freie Version von MYSQL (mich werden gleich wieder tausend leute korrigieren).
Es ist etwas das du kannst. Und es lebt noch.
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty ( 6. Sep 2023 um 10:00 Uhr)
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.889 Beiträge
 
Delphi 12 Athens
 
#9

AW: Delphi 7 - BDE 32-Bit - Wie eine Datenbank und/oder Alias erstellen ?

  Alt 6. Sep 2023, 09:39
Ja, dafür muss man entsprechende Tools entwickeln und bereitstellen, damit der User das überhaupt selbst machen kann. Trotzdem war das oft ein Fall für den Support, weil die eingebauten Reparaturmethoden es nicht automatisch korrigieren konnten und die Kunden es nicht selbst machen konnten.
Es ist einfach ein usability Albtraum. Ein system für masochisten. Ich weiß nicht wie wir OP davor retten können. Wir haben hier in der Support Datenbank 150 einträge wenn ich nur nach BDE suche.

Code:
Fehler:
Runtime 217.
Alte p*.lck und p*.net Dateien sind gelöscht worden.
BDEAdmin läst sich einwandfrei starten
Fehler tritt auf allen Workstations auf
Lösung:
Eine Tablle hatte einen zerstörten Header
Kann man mit unserem Setup ermitteln
Datei löschen und mittels Setup. Reorganisation neu anlegen lassen.
Kann auch andere Dateien betreffen. Eine komplette Reorganisation ist empfehlenswert.
Code:
Fehler:
"BDE-CFG Pafd nicht gefunden."
Die BDE ist nicht lauffähig
Ursache:
D-Info / Clicktel etc. ist installiert worden (die hinterlassen ein fehlerhafte BDE)(sie überschreiben die richtige)
BDE-Dateien wurden gelöscht ohne die Registry zu ändern.
Lösung:
In der Windows Registry den Borland Pfad suchen und umbenennen.
Danach neu installieren.
Sollen Konfigurationen von anderen Programmen eingelesen werden, kann man mit dem BDEADMIN.EXE die IDAPI32.CFG Dateien einmischen
Sollte die BDE bereits installiert sein und nur die Datenbankaliase nicht vorhanden sein können diese von Hand angelegt werden. Danach die Installation neu starten.
Code:
Fehler:
Runtime 217
Lösung/Ursache:
Die Language Einstellungen in der BDE-Konfiguration sind falsch.
statt ANSI muss PDOX intl. eingestellt werden.
Auch toll Runtime Error 217 heist immer einfach das irgendetwas mit der BDE nicht stimmt...

Code:
Fehler:
Indexfehler wird gemeldet.
Lösung/Ursache:
Die Tabelle war auf 256 MB angewachsen.
in BDE-Admin - Treiber -Paradox LEVEL auf 5 oder 7 und Blocksize auch 16384
Code:
Fehler:
Operation nicht anwendbar
Lösung/Ursache:
Mit dem BDEADMIN unter Konfiguration INIT folgende

BDE Parameter auf folgende Werte einstellen

LOW MEMORY USAGE 64
MAXBUFSIZE 8192
MAXFILEHANDLES 400
MEMSIZE 64
SHAREDMEMLOCATION 0x6BDE0000
SHAREDMEMSIZE 8192
USW. USW.
Ich verstehe nicht warum man sich sowas antun sollte.
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty ( 6. Sep 2023 um 09:44 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.395 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Delphi 7 - BDE 32-Bit - Wie eine Datenbank und/oder Alias erstellen ?

  Alt 6. Sep 2023, 10:56
Auch toll Runtime Error 217 heist immer einfach das irgendetwas mit der BDE nicht stimmt...
Das ist einfach eine Zugriffsverletzung. Um solche Runtime Error Anzeigen zu vermeiden, hatte ich seinerzeit beim Start der Exe die idapi32.dll gepatcht.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz