/ / Zeoslib: Jak stwierdzić, kiedy wykonanie zapytania zostało zakończone? - mysql, sql, delphi, mysql-connector, zeos

Zeoslib: Jak stwierdzić, kiedy wykonanie zapytania zostało zakończone? - mysql, sql, delphi, mysql-connector, zeos

Używam ZeosLib w Delphi do wywoływania MySQLprocedura składowana za pośrednictwem obiektu TZQuery. Natychmiast po zakończeniu wykonywania procedury przechowywanej MySQL muszę zainicjować mój następny blok kodu.

Dodałem SELECT 1; oświadczenie na końcu mojej przechowywanej procedury MySQL. Jaki jest najlepszy sposób, aby dowiedzieć się, że wyniki zostały zwrócone?

Odpowiedzi:

2 dla odpowiedzi № 1

Zeos lib nie gra ładnie z procedurami przechowywanymi, które zwracają zestaw wyników.
Aktywnie wyłącza zwracany zestaw wyników.
Istnieje obejście tego problemu, możesz aktywować zestaw wyników, zmieniając kod źródłowy ZEOS.

Jednak gdy to zrobisz, pojawi się wiele błędów, takich jak MySQL has gone away.
W nieprzewidywalnych czasach, prawdopodobnie dlatego wyłączyli tę opcję.

Ostatecznie, obejściem, na które poszedłem, jest umieszczenie dowolnego zestawu wyników, który potrzebuję w (tymczasowej) tabeli i zapytanie, że po zakończeniu procedury przechowywanej. To rozwiązało błędy i działa dobrze dla mnie.