🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.delphi.bazy-danych
Article #82402

Re: Delphi XE1 + ODBC = Access Violation

#82402
From: Grzegorz Skoczylas
Date: Thu, 30 Oct 2014 07:53
21 lines
2486 bytes
W dniu środa, 29 października 2014 17:05:46 UTC+1 użytkownik wloochacz napisał:
> W dniu 2014-10-29 13:51, Grzegorz Skoczylas pisze:
> > [...]

Zauważyłem, że problem dotyczy tylko sytuacji, gdy instrukcja SELECT ma parametry lub gdy TADOStoredProc ma zwrócić wynik.

Rozwiązałem to tak, że zamiast używać instrukcje SELECT z parametrami, przebudowuję w kodzie treść instrukcji. W przypadku tego programu taka zmiana nie miała praktycznie żadnego wpływu na wydajność.

W przypadku procedur sprawdziłem, że uruchomienie procedury przez ExecProc() nie generuje żadnych błędów. Ja jednak musiałem użyć Active := True, ponieważ pobieram wyniki działania procedur. Obszedłem problem tak, że tworzę tablicę tymczasową. Wyniki działania procedury przekierowuję do tablicy systemowej i z niej pobieram dane instrukcją SELECT. Działa.

P.S.
Baza danych: MS SQL 2008 R2

> Sprawdź wersję MDAC na różnych komputerach.
> Sprawdź wersję sterowników ODBC na różnych komputerach.
> Czy sterowniki ODBC są w odpowiedniej wersji dla aplikacji (32bit)?

Dzięki za podpowiedź. Sterowniki ODBC wydają się być OK. Sprawdzę jeszcze wersję MDAC.

--
Grzegorz
Technical Details
Message-ID: <f963bd30-6d2a-408a-9b49-966354aff951@googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.glorb.com!h15no2000539igd.0!news-out.google.com!u5ni16qab.1!nntp.google.com!s7no1545046qap.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
References: <33f93bd8-550b-46db-b9ea-265afd6d7876@googlegroups.com> <54511058$0$11131$65785112@news.neostrada.pl>

Show Full Headers
Complete Article Headers
X-Received: by 10.182.112.231 with SMTP id it7mr11748143obb.9.1414655617526;        Thu, 30 Oct 2014 00:53:37 -0700 (PDT)
X-Received: by 10.140.19.208 with SMTP id 74mr534qgh.19.1414655617360; Thu, 30 Oct 2014 00:53:37 -0700 (PDT)
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.glorb.com!h15no2000539igd.0!news-out.google.com!u5ni16qab.1!nntp.google.com!s7no1545046qap.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.lang.delphi.bazy-danych
Date: Thu, 30 Oct 2014 00:53:37 -0700 (PDT)
In-Reply-To: <54511058$0$11131$65785112@news.neostrada.pl>
Complaints-To: groups-abuse@google.com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=217.98.71.45; posting-account=elJBywoAAABA5LDFDwHGq9j6dDqjQyCN
NNTP-Posting-Host: 217.98.71.45
References: <33f93bd8-550b-46db-b9ea-265afd6d7876@googlegroups.com> <54511058$0$11131$65785112@news.neostrada.pl>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <f963bd30-6d2a-408a-9b49-966354aff951@googlegroups.com>
Subject: Re: Delphi XE1 + ODBC = Access Violation
From: Grzegorz Skoczylas <gskoczylas@gmail.com>
Injection-Date: Thu, 30 Oct 2014 07:53:37 +0000
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit