Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi ODBC + Delphi5: Stored Procedures aus MySQL5 aufrufen (https://www.delphipraxis.net/106843-odbc-delphi5-stored-procedures-aus-mysql5-aufrufen.html)

Angelika Petzold 17. Jan 2008 15:37

Datenbank: MySQL • Version: 5 • Zugriff über: ODBC

ODBC + Delphi5: Stored Procedures aus MySQL5 aufrufen
 
Hallo zusammen,

auf MySQL habe ich eine grosse SP geschrieben und mit dem Database-Explorer von Delphi5 getestet.
SQL-Code:
 call myproc(100,200);
Die Ergebnismenge wurde korrekt zurückgegeben.

Leider kann ich die SP nicht in Delphi einbinden. Wenn ich in der TStoredProc-Komponente die Datenbank ausgewählt habe kann ich in StoredProcName nichts auswählen. (die DB ist wirklich korrekt, TTable geht)

Deshalb habe ich versucht, die SP aus einer TQuery-Komponente mit obigem Aufruf aufzurufen.
Im Field-Editor bekam ich meine Ergebnisfelder angezeigt aber beim Versuch active auf true zu setzen erhielt ich folgende Fehlermeldung:
[MySQL][ODBC 3.51 Driver][mysqld-5.0.32-Debian_7etch4-log]Commands out of sync; you can't run this command now

Hat jemand eine Idee, woran das liegen könnte?

Gruss,
Angie

Bernhard Geyer 17. Jan 2008 15:46

Re: ODBC + Delphi5: Stored Procedures aus MySQL5 aufrufen
 
Irgendwo auf der MySQL-Seite stehen nötige ODBC-Einstellungen wenn über BDE gegangen wird.
Ansonsten mal direkte MySQL-Zugriffskomponenten probieren (z.B. Corelabs). Ich könnte mir vorstellen das einfach die BDE zu inkompatible mit SP's von MySQL ist (BDE ist ja schon seit Jahren abgekündigt).

Angelika Petzold 18. Jan 2008 08:10

Re: ODBC + Delphi5: Stored Procedures aus MySQL5 aufrufen
 
Zitat:

Zitat von Bernhard Geyer
Irgendwo auf der MySQL-Seite stehen nötige ODBC-Einstellungen wenn über BDE gegangen wird.

Das habe ich mir auch angesehen.
http://dev.mysql.com/doc/refman/5.0/...t-of-sync.html

Allerdings habe ich keine Ahnung, wie ich das aufrugen soll. Wenn ich es vor oder hinter meinen SP-Aufruf schreibe, z.B:
SQL-Code:
call myproc(100,200);
mysql_free_result();
dann ändert das nichts. :wall:

In der Beschreibung meines ODBC-Treibers habe ich auch keine Einstellung gefunden, die dafür relevant ist. Die scheint ja auch nicht falsch zu sein, da der "Database Explorer" von Delphi5 die SP problemlos aufrufen kann.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:25 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