Setting Prepared=true parameter causes "Input parameter mismatch" errors in SP's

Discussion of open issues, suggestions and bugs regarding usage of dbExpress drivers for InterBase & Firebird in Delphi and C++Builder
Post Reply
ehs@sabbagh.com
Posts: 1
Joined: Thu 10 Dec 2015 16:17

Setting Prepared=true parameter causes "Input parameter mismatch" errors in SP's

Post by ehs@sabbagh.com » Thu 10 Dec 2015 16:47

Hi folks!

Firebird 2.5, RAD Studio XE7, Devart dbExpress driver for Firebird 4.5.8

Some notable driver parameter values: EnableBCD=false, OptimizedNumerics=true, LongStrings=true, EnableLargeInt=true

I have an issue that appears whenever I set the "Prepared" extended parameter to True. If I do that and then call some non-selectable stored procedures via TSQLStoredProc components, I get "Input parameter mismatch" exceptions. This behavior is occurring for the two SPs that I call in this fashion, and not for other SPs I call via SELECT statements, or for SPs that take no parameters (obviously).

Procedure 1 takes three params: varchar(255), varchar(1000), blob subtype 1.
Procedure 2 takes eleven params: char(64), bigint, integer, integer, char(26), varchar(256), integer, varchar(256), integer, varchar(256), integer.

Corresponding TParam objects appear in RAD Studio's Object Inspector at design time, in the correct order, with chars mapped to ftFixedChar and varchars mapped to ftString.

Curiously, the two problematic stored procedures appear to work correctly, though, even after the exceptions. The only thing that seems to be common to the two procedures is the use of varchar(*) parameters. It seems like there's something going on with varchar(*) params when they're accessed through TSQLStoredProc components.

Anybody else seeing this behavior? Is there a workaround?

Thanks,
Elias Sabbagh

ViktorV
Devart Team
Posts: 2325
Joined: Wed 30 Jul 2014 07:16

Re: Setting Prepared=true parameter causes "Input parameter mismatch" errors in SP's

Post by ViktorV » Tue 15 Dec 2015 08:11

Unfortunately, we couldn't reproduce the problem. To investigate the problem, please compose a small sample reproducing the problem and send it to viktorv*devart*com, including scripts for creating database objects.

Post Reply