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
Seite 2 von 11     12 34     Letzte »    
HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
972 Beiträge
 
Delphi 6 Professional
 
#11

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

  Alt 5. Sep 2023, 10:31
Hmm..

oder (nicht bashen) mit den ADO-Komponenten von D7 eine (alte) ACCESS Datenbank per OLEDB.
Der alte OLEDB Treiber (Microsoft.Jet.OLEDB) für Access MDBs ist selbst bei Windos 11 noch per default installiert.

Somit kann aus dem Programm heraus eine MDB erzeigt werden und dann per SQL Tabellen...

Ergo:
- Keine Installation auf dem Client, die Anwendung kann als Portabel verwendet werden...
- Zwar besser nur SingleUse aber (eingeschränkt) auch von 2-3 Clients auf eine DB verwendbar..
(Ja ich Verwende Delphi 6 Pro und will NICHT wechseln!)
  Mit Zitat antworten Zitat
Benutzerbild von paule32.jk
paule32.jk

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

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

  Alt 5. Sep 2023, 11:42
@haentschman
Code:
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.
Frag doch einfach
Alles was nicht programmiert werden kann, wird gelötet
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

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

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

  Alt 5. Sep 2023, 11:50


Der Unterschied zwischen Table und Query ist:

Im Prinzip sind TTable und TQuery alle TDataSet. Sie halten Daten.
Der Unterschied ist: Die TTable holt IMMER ALLE Daten (select * from table). Die TQuery holt über SQL NUR die Daten die benötigt werden. (select yy from table where yy = z)
Je größer die Tabelle, wird die TTable länger geladen...Heißt, daß das Mittel der Wahl immer die TQuery sein soll.

Du mußt dich auch dringend mit den "Bausteinen" einer Datenbank beschäftigen. (SQL, Indizies etc.) Die sind wichtig. Dann wird es einfacher.

Fürs Erste mußt du dich für eine Datenbank entscheiden. BDE fällt aus. Imho Access mit ADO auch.

Tutorial SQL:
https://www.w3schools.com/sql/

Geändert von haentschman ( 5. Sep 2023 um 12:56 Uhr)
  Mit Zitat antworten Zitat
johndoe049

Registriert seit: 22. Okt 2006
170 Beiträge
 
#14

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

  Alt 5. Sep 2023, 13: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
QuickAndDirty

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

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

  Alt 5. Sep 2023, 13:38
Nur um das mal ganz deutlich zu machen....
Die Installationsdateine für die BDE von Borland gibt es oft nur aus zweifelhaften Quellen.
Jeder User muss die haben.
Bei jeder Installation des Programms müssen die ausgeführt werden.
Mann sollte die nur als DER Domain Administrator ausführen.
Die BDE installiert die BDEAdmin.exe im IDAPI Verzeichniss.
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.

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
Manchmal haben Tabellen abgespeicherte Keyviolations in der Datei auf dem Primary key und können nicht geöffnet werden.

USW USW USW

Wir haben die BDE noch Jahrelang am Leben gehalten, bei einigen Kunden bis heute! Das ist ein riesen Problem. Es ist mega aufwendig. Und die Menschen die sich mit diesem Dinosaurier auskennen werden auch weniger.
Ich will dich nicht bashen eher RETTEN. Dein Post fühlt sich so ein bisschen an wie wenn jemand um hilfe für seine Nitroglyzerinflaschen in seiner Silbermine fragt und alle sagen ihm: "Nimm doch bitte was anderes! TNT, Stickstoffdünger+Diesel, Plastik Sprengstoff, Nobel Dynamit...alles alles nur nicht das!"

Nochmals Entschuldigung.
Was soll ich sagen ? Bitte spring nicht?
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty ( 5. Sep 2023 um 13:41 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

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

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

  Alt 5. Sep 2023, 14: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
AppCentral

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

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

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

  Alt 5. Sep 2023, 15: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
170 Beiträge
 
#18

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

  Alt 5. Sep 2023, 15: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.388 Beiträge
 
Delphi 12 Athens
 
#19

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

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

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

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

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

  Alt 6. Sep 2023, 10: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
Antwort Antwort
Seite 2 von 11     12 34     Letzte »    

 

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 22:38 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