AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Diskussion: Umstellung einer Datenbank in einem Projekt
Thema durchsuchen
Ansicht
Themen-Optionen

Diskussion: Umstellung einer Datenbank in einem Projekt

Ein Thema von RWarnecke · begonnen am 9. Dez 2009 · letzter Beitrag vom 17. Dez 2009
Antwort Antwort
Seite 1 von 10  1 23     Letzte »    
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#1

Diskussion: Umstellung einer Datenbank in einem Projekt

  Alt 9. Dez 2009, 09:13
Hallo zusammen,

wenn ich in einem Programm eine Datenbank habe und diese Umstellen muss. Stelle ich mir die folgenden Fragen :
  1. Worauf muss man achten ?
  2. Lohnt es sich das Programm komplett neu aufzubauen ?
  3. Wenn im Programm DB-Komponenten (TDBEdit, TDBLabel u.s.w.) habe, sollte ich diese ersetzen ?
  4. Umstellung von TTable auf TQuery (ja/nein) ?
Ich selber würde das Programm neu aufbauen. Dabei würde ich alles auf Queries umbauen und die ganzen DB-Komponenten rausschmeissen. Das ist natürlich viel Aufwand, kann aber so am besten das Layout von den Daten trennen.

Wie würde Ihr vorgehen und unter welchen Voraussetzungen würdet Ihr was machen ?
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Diskussion: Umstellung einer Datenbank in einem Projekt

  Alt 9. Dez 2009, 09:15
Zu.
2.) 3.) Nicht wegen der Umstellung
4.) Auf jeden Fall
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#3

Re: Diskussion: Umstellung einer Datenbank in einem Projekt

  Alt 9. Dez 2009, 09:25
Zu 4.):
Nur was für eine Abfrage habe ich bei TTable. Ich entsimme mich, dass das immer eine Abfrage auf die komplette Tabelle ist. Liege ich damit richtig oder falsch ?

Welche Vorteil habe ich dabei, wenn ich die Komponenten TQuery-->TDataSource-->TDBEdit verbinde ? Irgendwie sehe ich darin keinen Vorteil. Ich bin der Meinung, dass wenn ich die Daten vom TQuery diekt in ein TEdit zum Beispiel schreibe mehr davon habe und auch flexibler bin.
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Diskussion: Umstellung einer Datenbank in einem Projekt

  Alt 9. Dez 2009, 09:29
Ein TTable hat bei einem richtigen DBMS die Abfrage select * from <Tabelle>; Also alle Felder und alle Records.
Zitat:
Irgendwie sehe ich darin keinen Vorteil. Ich bin der Meinung, dass wenn ich die Daten vom TQuery diekt in ein TEdit zum Beispiel schreibe mehr davon habe und auch flexibler bin.
Das ist ja auch so. Ich meinte ja, dass dies beim Austausch des DBMS nicht notwendig ist. Unabhängig davon kann es aber durchaus sinnvoll sein.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von joachimd
joachimd

Registriert seit: 17. Feb 2005
Ort: Weitingen
679 Beiträge
 
Delphi 12 Athens
 
#5

Re: Diskussion: Umstellung einer Datenbank in einem Projekt

  Alt 9. Dez 2009, 09:36
Zitat von mkinzler:
Ein TTable hat bei einem richtigen DBMS die Abfrage select * from <Tabelle>; Also alle Felder und alle Records.
kleiner Kommentar hierzu: das gilt nicht für alle, sondern nur für die, die reines SQL zulassen und sonst nichts. Der ADS zB bietet auch über die Client/Server Engine echtes ISAM an ... damit kann man bei solcherlei Abfragen um viele Größenordnungen schneller sein als mit reinem SQL (und - wie bei den meisten - einem FETCH ALL, wenn man nur den letzten Datensatz anzeigen möchte, ohne gleich die Query zu schliessen und neu zu erstellen).
Joachim Dürr
Joachim Dürr Softwareengineering
http://www.jd-engineering.de
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Diskussion: Umstellung einer Datenbank in einem Projekt

  Alt 9. Dez 2009, 09:40
Zitat:
kleiner Kommentar hierzu: das gilt nicht für alle, sondern nur für die, die reines SQL zulassen
Das hatte ich "richtigen" DBMS gemeint.
Bei Desktop Datenbanken wird hingegen ein TQuery auf eine TTable abgebildet.
Markus Kinzler
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: Diskussion: Umstellung einer Datenbank in einem Projekt

  Alt 9. Dez 2009, 09:40
Hallo,

zu aller erst mal die Frage,
welche Datenbank der Ausgangspunkt ist.
Ich schätze ja mal Paradox oder DBase (?)
Dann geht es hier also auch um die Ablösung der BDE ...


1. Worauf muss man achten ?

- Keine Fehler einbauen, d.h. die DB-Funktionen sollten Unit-Tests haben (dunit)
- Performance-Tests mit "grosser" DB
Mit gross meine ich, das in der Personal-Tabelle nicht eine Person drinsteht,
sondern der normale Standard (was auch immer das bei dir ist)


2. Lohnt es sich das Programm komplett neu aufzubauen ?

- Kommt auf das Programm an.


3. Wenn im Programm DB-Komponenten (TDBEdit, TDBLabel u.s.w.) habe, sollte ich diese ersetzen ?

- Habe ich nie benutzt.


4. Umstellung von TTable auf TQuery (ja/nein) ?

Habe ich genauso gemacht. Im Nachhinein war es ein Riesenaufwand (vor allem das Testen)
Ich habe praktisch den kompletten DB-Code neugeschrieben.
Es wurden dann auch "spezielle" SQL-Konstrukte benutzt,
wie z.B. joins, die mit Paradox wegen der Performance nicht funktionierten.


Der Aufwand ist auf jeden Fall nicht zu unterschätzen,
wobei natürlich das Original-Programm eine grosse Rolle spielt
(vorhandene Trennung DB / Form).

Ich habe mir noch eine Wrapper-Komponente TQuery (BDE) -> TDataSet (FIBPlus)
gebaut, die die paar fehlenden BDE-Query-Befehle (z.B. QueryIsEmpty)
umgesetzt hat.


#Moderator#
Bitte nach Datenbanken verschieben.


Heiko
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von joachimd
joachimd

Registriert seit: 17. Feb 2005
Ort: Weitingen
679 Beiträge
 
Delphi 12 Athens
 
#8

Re: Diskussion: Umstellung einer Datenbank in einem Projekt

  Alt 9. Dez 2009, 10:09
Zitat von mkinzler:
Das hatte ich "richtigen" DBMS gemeint.
Ich möchte hier nicht große Diskussionen und Grabenkämpfe vom Zaun brechen, aber was unterscheidet für Dich ein "richtiges" von einem "falschen" (oder ist das der falsche Begriff) DBMS? Ein DBMS (also Datenbank Management System) ist generell gesagt, ein System, das dabei hilft, Datenbanken (also erstmal unabhängig von deren Implementierung - damit fällt auch eine Sammlung von Textdateien darunter!) zu verwalten.
Ich muss leider allzuoft erleben, dass solcherlei Aussagen gebetsmühlenartig heruntergeleiert werden, ohne dass sich die Leute Gedanken darüber machen - nur weil es solche Schwergewichte wie IBM, Oracle, MS - und auch Sybase (mit der ASE) vorbeten.
Joachim Dürr
Joachim Dürr Softwareengineering
http://www.jd-engineering.de
  Mit Zitat antworten Zitat
9. Dez 2009, 10:13
Dieses Thema wurde von "mkinzler" von "Programmieren allgemein" nach "Datenbanken" verschoben.
Geht um Datenbanken
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: Diskussion: Umstellung einer Datenbank in einem Projekt

  Alt 9. Dez 2009, 10:23
Bei den meisten DBMS handelt es sich um SQL-Server, von denen ging ich aus. Im Kontrast hierzu sah ich Desktop Datenbanken, also ein System ohne Server, wo alle Clients direkt auf die Datei(en) zugreifen und sich über Sperren synchronisieren.
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 10  1 23     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 21:33 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