AGB  ·  Datenschutz  ·  Impressum  







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

Zugriff auf MySQL

Ein Thema von idefix2 · begonnen am 24. Jul 2010 · letzter Beitrag vom 4. Aug 2010
 
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.388 Beiträge
 
Delphi 12 Athens
 
#8

AW: Zugriff auf MySQL

  Alt 3. Aug 2010, 08:15
Jedenfalls nicht, wenn's dann knallt.
Wenn dein Programm für 5.0 geschrieben ist (also Queries/Statements dafür verwendet, dann knallt es auch, wenn man ihm eine 4.1-DLL unterschiebt
Die Server sind hoffentlich abwärts kompatibel, so daß man falls dein Programm für 4.1 erstellt wurde dennoch mit einer 4.1-DLL (Client) auf 'nen 5.5er Server zugreifen kann, anstatt deinem Programm auch noch einen 5.5er Clienten unterzuschieben und zu hoffen, daß dieser auch läuft. PS: einige APIs wurden ja geändert und selbst wenn sich diese Unit anpaßt ... sie kennt nur das was sie kennt und es ist somit (aktuell) eh nicht möglich ihr z.B. 'nen 6.0-Clienten unterzuschieben.

Man muß also bei beiden Libs einen passenden Clienten verwenden (nur daß bei mir halt Weniger, bzw. nur Ausgewähltere passen)

Delphi-Quellcode:
TMySQLx = ...;
TMySQL = ^RMySQL;
TMyResult = ^RMyResult;
TMyField = ^RMyField;
TMyRow = ^RMyRow;
TMyRows = ^RMyRows;
TMyStatement = ^RMyStatement;
TMyBinding = ^RMyBinding;
TMyBindBuffer = ^RMyBindBuffer;
Nur 2 "Klassen" gingen bei mir nicht, da ich die Funktionen direkt in die, von ihnen für den Zugriff genutzten, Record integriert hab.

Delphi-Quellcode:
// statt
function mysql_ssl_set(_mysql: PMYSQL; key, cert, ca, capath, cipher: PAnsiChar): longint; stdcall;
                    // ^^^^^^^^^^^^^^^

type
  // so
  TMySQL = ^RMySQL;
  RMySQL = record
    function mysql_ssl_set(key, cert, ca, capath, cipher: PAnsiChar): longint; stdcall;
  end

  // wobei eigentlich ja so
  RMySQL = record
    function mysql_ssl_set(key, cert, ca, capath, cipher: AnsiString): longint; stdcall;
  end;
Txxx ist also eigentlich ein Pxxx und das Rxxx ein Txxx
weiß noch nicht, ob ich das wieder ändere, aber ich dachte mir, daß Txxx (statt Pxxx) mehr an eine Klasse erinnert.
Aber da ich eh noch nicht weiß, was ich mit der Klasse TMySQLx (die statischen Funktionen, welche mal in RMySQL drin waren) mach, könnte es wohl doch so sein, daß ich es noch tausche und die statischen Funktionen wieder in den anderen Record verschiebe.



In deinem Fall sind also auch nur TMySQL, TMyResult und TMyRow, welche du benötigst,
bzw. zusätzlich noch TMyStatement und TMyBinding für die prepared Statements.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 3. Aug 2010 um 08:25 Uhr)
  Mit Zitat antworten Zitat
 


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 08:16 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz