ORA-01008: not all variables bound with 4.50.19

Discussion of open issues, suggestions and bugs regarding usage of dbExpress drivers for Oracle in Delphi and C++Builder
Post Reply
frissony
Posts: 1
Joined: Sun 22 Nov 2009 03:13

ORA-01008: not all variables bound with 4.50.19

Post by frissony » Sun 22 Nov 2009 03:21

Using DbxOda 4.50.19 (latest version as of today) with C++ Builder 6, I get error:

---------------------------
Debugger Exception Notification
---------------------------
Project Project1.exe raised exception class EOraError with message 'ORA-01008: not all variables bound
'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------

I have been trying many things with no luck.

Not sure whether the problem is this:
It seems that oracle is getting the Query:
UPDATE SOME_TABLE SET NAME = 'XYZ' WHERE SOME_ID=:1
where as it should get query:
UPDATE SOME_TABLE SET NAME = 'XYZ' WHERE SOME_ID=49
?

Code:

Code: Select all

  SQLConnection->DriverName = "DevArtOracleDirect";
  SQLConnection->LibraryName = "dbexpoda.dll";
  SQLConnection->VendorLib = "dbexpoda.dll";
  SQLConnection->GetDriverFunc = "getSQLDriverORADirect";
  SQLConnection->Params->Clear();
  ....Database,  Password etc....
  SQLConnection->Params->Add("LocalCode=0000");
  SQLConnection->Params->Add("BlobSize=-1");
  SQLConnection->Params->Add("Oracle TransIsolation=ReadCommitted");
  SQLConnection->Params->Values["TrimFixedChar"]	= "1";
  SQLConnection->Params->Values["MetaData"]		= "0";

  SQLQuery->SQLConnection = SQLConnection;
  SQLQuery->SQL->Text = "UPDATE SOME_TABLE SET NAME = 'XYZ' WHERE SOME_ID=:mm";
	SQLQuery->ParamByName("mm")->ParamType = ptInput;
	SQLQuery->ParamByName("mm")->DataType = ftInteger;
	SQLQuery->ParamByName("mm")->Value = 49;

	SQLQuery->ExecSQL(true);
Really need some help.

Plash
Devart Team
Posts: 2844
Joined: Wed 10 May 2006 07:09

Post by Plash » Mon 23 Nov 2009 07:46

You should pass False to the ExecSQL method.

Post Reply