AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ADO/ODBC

Ein Thema von Macher · begonnen am 4. Mai 2006 · letzter Beitrag vom 4. Mai 2006
Antwort Antwort
Seite 1 von 2  1 2      
Macher

Registriert seit: 3. Mär 2005
Ort: Lübeck
8 Beiträge
 
Delphi 6 Enterprise
 
#1

ADO/ODBC

  Alt 4. Mai 2006, 09:33
Datenbank: verschiende • Zugriff über: ADO -> ODBC
Hallo,

gibt es eine Möglichkeit den Datenbanktyp zuermitteln, also ob es sich z.B. um eine Orcale oder SQL Server Datenbank handelt. Ich greife per ADOConnection auf ein ODBC Filedsn welches die Logindaten enthält.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: ADO/ODBC

  Alt 4. Mai 2006, 09:35
In der dsn steht auch der zu verwendende Treiber drin.

[Edit: dsn war natürlich gemeint]
Markus Kinzler
  Mit Zitat antworten Zitat
Macher

Registriert seit: 3. Mär 2005
Ort: Lübeck
8 Beiträge
 
Delphi 6 Enterprise
 
#3

Re: ADO/ODBC

  Alt 4. Mai 2006, 09:39
Zitat von mkinzler:
In der dnc steht auch der zu verwendende Treiber drin.
Das sollte die letzte Lösung sein die ich umsetzen wollte. Wäre gut wenn ich es direkt über die ADOConnection ermittlen könnte.
  Mit Zitat antworten Zitat
jensw_2000
(Gast)

n/a Beiträge
 
#4

Re: ADO/ODBC

  Alt 4. Mai 2006, 10:41
Nachdem die ADOConnection geöffnet ist, kannst du TAdoConnection.Provider auslesen.
Dieser Wert wird nach dem Öffnen der Connection automatisch aktualisiert.



Schöne Grüße,
Jens
  Mit Zitat antworten Zitat
Macher

Registriert seit: 3. Mär 2005
Ort: Lübeck
8 Beiträge
 
Delphi 6 Enterprise
 
#5

Re: ADO/ODBC

  Alt 4. Mai 2006, 10:57
Zitat von jensw_2000:
Nachdem die ADOConnection geöffnet ist, kannst du TAdoConnection.Provider auslesen.
Dieser Wert wird nach dem Öffnen der Connection automatisch aktualisiert.



Schöne Grüße,
Jens
Dadurch das ich über die ODBC, und nicht direkt auf die einzeln DBs zugreife bleibt der Provider immer gleich "MSDASQL.1" hmmm...

Bei der BDE, die ich Vorher benutzt hatte, konnte man mit der procedure "Check" den Typ ermitteln sowas ähnliches suche ich jetzt halt für ADO
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#6

Re: ADO/ODBC

  Alt 4. Mai 2006, 11:42
Zitat von Macher:
Dadurch das ich über die ODBC, und nicht direkt auf die einzeln DBs zugreife bleibt der Provider immer gleich "MSDASQL.1" hmmm...
Es ist ein Fehler, den Umweg über ODBC zu nehmen, wenn ein OLE-DB Provider für die Datenbank zur Verfügung steht.
Gründe:
* durch die weitere ODBC-Schicht verliert man an Performance
* die weitere Schicht bedeutet höhere Resourcenbelastung
* die ODBC-Schicht veringert den internen Funktionsumfang, da ADO mehr bietet als man
sich zur Zeit als ODBC entwickelt wurde vorstellen konnte.
Andreas
  Mit Zitat antworten Zitat
Macher

Registriert seit: 3. Mär 2005
Ort: Lübeck
8 Beiträge
 
Delphi 6 Enterprise
 
#7

Re: ADO/ODBC

  Alt 4. Mai 2006, 11:50
Zitat von shmia:
Zitat von Macher:
Dadurch das ich über die ODBC, und nicht direkt auf die einzeln DBs zugreife bleibt der Provider immer gleich "MSDASQL.1" hmmm...
Es ist ein Fehler, den Umweg über ODBC zu nehmen, wenn ein OLE-DB Provider für die Datenbank zur Verfügung steht.
Gründe:
* durch die weitere ODBC-Schicht verliert man an Performance
* die weitere Schicht bedeutet höhere Resourcenbelastung
* die ODBC-Schicht veringert den internen Funktionsumfang, da ADO mehr bietet als man
sich zur Zeit als ODBC entwickelt wurde vorstellen konnte.
Stimmt schon, aber durch den "Umweg" bleibt das System offener. Ich kann schneller neue DB-Connections erstellen.
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#8

Re: ADO/ODBC

  Alt 4. Mai 2006, 12:10
Zitat von Macher:
Stimmt schon, aber durch den "Umweg" bleibt das System offener. Ich kann schneller neue DB-Connections erstellen.
Nein, über UDL-Dateien bist du noch flexibler, als mit den System DSNs.
Du erzeugst dir einfach eine neue txt-Datei und benennst diese nach *.UDL um.
Mit dem Doppelklick darauf kannst du die Verbindung konfigurieren.
In deiner Anwendung setzt du dann den Connectionstring:
Delphi-Quellcode:
udlfilename := ChangefileExt(ParamStr(0), '.UDL'); // UDL heisst gleich wie deine Anwendung (nur ein Vorschlag)
ADOConnection1.Connectionstring := 'FILE NAME='+udlfilename;
Andreas
  Mit Zitat antworten Zitat
Macher

Registriert seit: 3. Mär 2005
Ort: Lübeck
8 Beiträge
 
Delphi 6 Enterprise
 
#9

Re: ADO/ODBC

  Alt 4. Mai 2006, 12:33
Zitat von shmia:
Zitat von Macher:
Stimmt schon, aber durch den "Umweg" bleibt das System offener. Ich kann schneller neue DB-Connections erstellen.
Nein, über UDL-Dateien bist du noch flexibler, als mit den System DSNs.
Du erzeugst dir einfach eine neue txt-Datei und benennst diese nach *.UDL um.
Mit dem Doppelklick darauf kannst du die Verbindung konfigurieren.
In deiner Anwendung setzt du dann den Connectionstring:
Delphi-Quellcode:
udlfilename := ChangefileExt(ParamStr(0), '.UDL'); // UDL heisst gleich wie deine Anwendung (nur ein Vorschlag)
ADOConnection1.Connectionstring := 'FILE NAME='+udlfilename;
cool, die Sache hat nur einen Hacken... Es werden nicht alle DB unterstützt, bzw. es gibt die Treiber nicht dafür. Es fehlt z.B. Firebird/Interbase. Außerdem bleibt immer noch das Problem mit dem erkennen des Datenbanktypes...
  Mit Zitat antworten Zitat
Benutzerbild von mikhal
mikhal

Registriert seit: 11. Sep 2003
Ort: Linz am Rhein
796 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: ADO/ODBC

  Alt 4. Mai 2006, 13:02
OLEDB Provider für Firebird:

ZStyleGroup: Shareware

IBProvider: gibt es auch als Freeware.

Grüße
Mikhal
Michael Kraemer
Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 17:45 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