AGB  ·  Datenschutz  ·  Impressum  







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

ADOConnection

Ein Thema von Moombas · begonnen am 13. Aug 2019 · letzter Beitrag vom 14. Aug 2019
Antwort Antwort
Benutzerbild von Moombas
Moombas

Registriert seit: 22. Mär 2017
Ort: bei Flensburg
525 Beiträge
 
FreePascal / Lazarus
 
#1

ADOConnection

  Alt 13. Aug 2019, 14:59
Datenbank: MySQL • Version: 8 • Zugriff über: Delphi
Moin zusammen,

ich "muss" mich aktuell nun anfangen mit Datenbanken auseinander zu setzen.
Generell bekomme ich die Verbindung hin (Daten auslesen, hinzufügen, ändern und löschen geht auch), jedoch habe ich da ein Verständnis- Umsetzungsproblem.

Jedoch habe ich im Vorfeld dafür eine ODBC-Datenquelle eingerichtet, welche ich per TADOConnection nutze.
Wenn jemand diese Verbindung jedoch nicht eingerichtet hat, kann er das Programm nachher nicht nutzen, richtig!?

Wie bekomme ich dies also ohne diese "voreingerichtete" Verbindung hin? Stehe da aktuell etwas auf dem Schlauch.

Was ich habe ist:
Servername : Port
Benutzer
Passwort
Schema
Tabelle
Der Weg ist das Ziel aber man sollte auf dem Weg niemals das Ziel aus den Augen verlieren.
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#2

AW: ADOConnection

  Alt 13. Aug 2019, 15:10
Du kannst direkt mit ADO arbeiten und brauchst kein ODBC zu bauen.
Den Connectionstring kannst Du dann vorgeben (wenn Du sicher bist, wo die DB liegt)
oder Du lässt den Anwender einen bauen.

P.S.:
https://www.connectionstrings.com/
Gruß, Jo
  Mit Zitat antworten Zitat
Benutzerbild von timog
timog

Registriert seit: 26. Sep 2006
Ort: Landkreis Oldenburg (Oldb)
117 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#3

AW: ADOConnection

  Alt 13. Aug 2019, 16:57
Ich stimme jobo voll zu; falls es aber ODBC sein soll/muss, dann sind es letztendlich nur Einträge in der Registry.

HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI
HKEY_CURRENT_USER\Software\ODBC\ODBC.INI
bzw.
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\ ODBC\ODBC.INI

Dort solltest Du die ODBC Datasources finden. Diese kannst Du über ein Setup Programm auf den Clients erstellen lassen oder Du verteilst eine REG-Datei mit diesen ODBC-Einstellungen.

Außerdem wirst Du wohl den mySQL Connector/ODBC Datenbanktreiber (ODBC) oder den OLEDB Provider MySQLProv (ADO) auf dem Client benötigen. Der kann ebenfalls über ein Setup verteilt werden oder muss halt manuell vor dem Einrichten der ODBC Datasource vorhanden sein.
Timo
Real Programmers are surprised when the odometers in their cars don't turn from 99999 to 9999A.
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#4

AW: ADOConnection

  Alt 13. Aug 2019, 19:04
Als Ergänzung:

Im Grunde ist die ODBC Geschichte erstmal nur eine weitere Fehlerquelle. Du kannst auf 3 Level (Datei,User,System) Datenquellen definieren. Spätestens bei Systemdatenquellen ist das (auch) ein Rechteproblem. Dann hast Du das noch als 32 bit und 64bit, führt auch immer wieder zu Verwirrung.
Wenn überhaupt würde ich erstmal zu Fuß eine Datei ODBC anlegen (außerhalb des Programms, ohne Code) und die einfach benutzen. Die gesparte Zeit kannst Du dann in die Datenbankprogrammierung stecken.

Einen ADO Connectionstring kannst Du selbst festlegen wie Du magst und kommst auch an die DB.
Auch das kannst Du dem User überlassen, indem du ein UDL File verwendest, das der User anlegen muss.

Dazu gibt es hier sicher auch schon mehrere Beiträge.
UDL Files anlegen: Explorer, Neu, Textdatei, umbenennen nach *.udl, Doppelklick auf die Datei startet einen Windows System Assistenen zur Abfrage der notwendigen Parameter (inkl. Verbindungstest). Die fertige Datei enthält den Connectionstring.
Gruß, Jo
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#5

AW: ADOConnection

  Alt 13. Aug 2019, 19:54
Aber.....
Ein Aber gibt es immer....

ADO ist nicht nicht mehr State of the Art aber das galt vor 10 Jahren auch für ODBC! Heute ist es umgekehrt.
Du solltest, falls möglich, beide Schnittstellen beachten und alle Datentypen durchtesten. Und da es für Datenbanken auch unterschiedliche Treiber (vom DB-Hersteller und von MS) gibt/geben kann solltest du das im Hinterkopf behalten. Im Zweifel mußt Du Deine Kunden mit den richtigen Treibern versorgen.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

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

AW: ADOConnection

  Alt 14. Aug 2019, 05:30
Moin...
Zitat:
ich "muss" mich aktuell nun anfangen mit Datenbanken auseinander zu setzen.
Für mich stellen sich folgende Fragen:
1. Warum MySQL? Einfach so? Lizenzfalle...schon mal gehört?
2. Warum ADO? Einfach so?
3. Privates Projekt? Commerzielles Projekt?
4. Datensensitive Componenten? = Bääääh. Zum Üben i.O., aber für das eigentliche Projekt besser andere Methode.
5. Normalisierung...schon mal gehört?
6. Admin Tool für deine Datenbankauswahl?

Geändert von haentschman (14. Aug 2019 um 06:33 Uhr)
  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 02:59 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