AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Datenbank Abstraktionsschicht
Thema durchsuchen
Ansicht
Themen-Optionen

Datenbank Abstraktionsschicht

Ein Thema von Nightfly · begonnen am 16. Jan 2006 · letzter Beitrag vom 17. Jan 2006
Antwort Antwort
Seite 1 von 3  1 23      
Nightfly

Registriert seit: 25. Mär 2004
Ort: Dresden
118 Beiträge
 
#1

Datenbank Abstraktionsschicht

  Alt 16. Jan 2006, 12:05
Datenbank: ADS • Zugriff über: noch garnicht
Hi

Ich soll jetzt mal wieder was in Delphi schreiben, diesmal mit ner neuen Datenbank, dem AdvantageDatabaseServer... toll, der hat sogar Komponenten.

Gibts nich auch Komponenten, bei denen ich ans andere Ende alle SQL Datenbanken hängen kann? So ne schöne zwischenschicht quasi, um unabhängig zu sein?
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.641 Beiträge
 
#2

Re: Datenbank Abstraktionsschicht

  Alt 16. Jan 2006, 12:25
Also die BDE wäre sowas, aber die sollte man ja nicht mehr verwenden.

Wenn Du im .NET - Bereich arbeitest bietet Dir ADO.NET zumindest größtenteils diese Zwischenschicht, da Du da auf den Interfaces der ADO-Komponenten arbeiten kannst. Problematisch wird das nur, wenn Deine Datenbanken unterschiedliche SQL-Syntax haben (z.B. inner/outer Joins bei Oracle und SQL Server).

Ich bin derzeit dran da ein entsprechendes Framework zu bauen das auch SQL-Dialekt-unabhängig ist, aber das ist derzeit noch weit davon entfernt produktiv einsetzbar zu sein. Und wenn wird das auch nicht gerade billig sein

Ansonsten schau Dir mal ECO II an. Das soll sowas auch recht gut können.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#3

Re: Datenbank Abstraktionsschicht

  Alt 16. Jan 2006, 12:29
Hallo,

DBExpress lässt sich wunderbar per DLL für beliebige Datenbanken erweitern. Ich hab mir selbst darauf aufbauend eine Komponente gebaut, die auf verschiedene Datenbanken zugreifen kann (momentan mySQL, DB2, Oracle und MSSQL). Da ich leider momentan keinen Zugang zu den verschiedenen Datenbanken habe, konnte ich nur mySQl und DB2 testen.

Gruß
xaromz
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Datenbank Abstraktionsschicht

  Alt 16. Jan 2006, 12:35
Es gäbe auch noch die Möglichkeit ODBC zu verwenden. Oder für vorhandene Abstraktionsframeworks ( z.B. ZeosDBO) weiter Zugriffsschicht für ADS implementieren.
Markus Kinzler
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.381 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Datenbank Abstraktionsschicht

  Alt 16. Jan 2006, 13:03
Hi,

wenn Ihr wirklich ne Abstraktionsschicht braucht, dann schreib Dir eine! Damit hast Du zum einen wirklich eine Datenbankunabhängigkeit, da für jede neue DB eine weitere Klasse fällig wird, zum anderen kannst Du aber in der jeweiligen Klasse die jeweiligen Eigenschaften der Datenbank voll ausnutzen.

Du musst einzig und allein sehr fit in OOP sein....

Grüße
Lemmy
  Mit Zitat antworten Zitat
Nightfly

Registriert seit: 25. Mär 2004
Ort: Dresden
118 Beiträge
 
#6

Re: Datenbank Abstraktionsschicht

  Alt 16. Jan 2006, 13:10
Die Idee kam mir auch schon, klingt verlockend, aber mit der Zeit die ich hab schauts da sehr böse aus

Was spräche gegen ODBC?
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: Datenbank Abstraktionsschicht

  Alt 16. Jan 2006, 13:13
Zitat von Nightfly:
Die Idee kam mir auch schon, klingt verlockend, aber mit der Zeit die ich hab schauts da sehr böse aus
Wenn du mehrere DB's unterstützen willst kommst Du nicht drum rum gleich am Anfang genügend Zeit zu investieren sonst mußt du später noch mehr Zeit investieren.

Zitat von Nightfly:
Was spräche gegen ODBC?
- Du mußt Treiber installieren (Admin-Rechte, DLL-Hölle)
- Nicht alle Features aller DB's sind über ODBC verfügbar
- ODBC ist eh Auslaufmodell (gibts nicht mehr unter Win64)
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Nightfly

Registriert seit: 25. Mär 2004
Ort: Dresden
118 Beiträge
 
#8

Re: Datenbank Abstraktionsschicht

  Alt 16. Jan 2006, 13:23
Ich bin ja hier nur der doofe Praktikant... das ich mehrere DB's unterstützen will ist meine eigene Motivation, mein Chef ließe mich am liebsten noch mit Paradox entwickel, zukunftsträchtigkeit interessiert hier keinen, (ich entwickle mit Delphi 5!!).

Hmmm...ok, ODBC fällt damit wohl erstmal Flach...damn...weitere Vorschläge außer selbst Implementieren?
  Mit Zitat antworten Zitat
Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#9

Re: Datenbank Abstraktionsschicht

  Alt 16. Jan 2006, 13:50
Zitat von Bernhard Geyer:
- ODBC ist eh Auslaufmodell (gibts nicht mehr unter Win64)
Hast du da eine Quelle zu?

Bei MS stehts so (FAQ for Development on 64-bit Windows, ODBC 64-Bit Information):
Zitat von FAQ for Development on 64-bit Windows:
# Are ODBC or OLE DB supported in 64-bit Windows?

Yes, both ODBC and OLE DB are supported in 64-bit editions of Windows.

For more information, please see the ODBC 64-Bit Information in the MSDN Library.

The Microsoft OLE DB Core Services and the Microsoft SQL Server OLE DB Provider has been updated to support 64-bit Windows. These updates involve several API changes. If you are porting 32-bit OLE DB code to 64-bits, you will need to make changes to your code. Several new typedefs have been defined in the OLE DB header file. These new types allow you to maintain one set of source code for both 32-bit and 64-bit platforms. The simplest way to ensure that your code will compile in either 32-bit or 64-bit environments is to make sure that the code uses these new typedefs for variable definitions.

For more information, please see the What is a decorated device driver and how do I decorate my device drivers to get them to install?

An INF section is considered to be decorated when its name contains a TargetOSVersion suffix that identifies a particular platform and operating system. Decorated sections contain installation information that is relevant only to the platform and operating system specified by TargetOSVersion. If the device driver uses INF files for installation and the driver is not decorated, the driver will not install. Please check the INF files of third party devices and make sure the INF files have been decorated.

For more information, please see the article INF Requirements for 64-bit Systems.
Volker
Besucht meine Garage
Aktuell: RtfLabel 1.3d, PrintToFile 1.4
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#10

Re: Datenbank Abstraktionsschicht

  Alt 16. Jan 2006, 13:57
Zitat von Flocke:
Zitat von Bernhard Geyer:
- ODBC ist eh Auslaufmodell (gibts nicht mehr unter Win64)
Hast du da eine Quelle zu?
Sowei ich mich erinnere hab ich das mal auf einer EKON-Konferenz gehört.
Aber falls es nicht "ausläuft" ist mir das auch egal. Nativer gehts viel Problemloser.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


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 09:40 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