INSERT INTO Oracle LONG or LONGRAW
Posted: Mon 17 Sep 2007 14:54
Hi there
I wish to insert a record into Oracle's "LONG RAW" or "LONG" fields.
Code used:
OraQuery1.Session.Connect;
OraQuery1.SQL.Text := 'INSERT INTO "MICHAEL"."TEST_ALL" ("TESTLONGRAW") VALUES (EMPTY_BLOB()) RETURNING TESTLONGRAW INTO :TESTLONGRAW ';
OraQuery1.ParamByName('TESTLONGRAW').ParamType := ptInput;
OraQuery1.ParamByName('TESTLONGRAW').LoadFromFile('C:\cvs\Projects\DataProducer\bin\klein.jpg', ftBlob);
OraQuery1.ExecSQL;
I get an error: "ORA-00932: inconsistent datatypes: expected NUMBER got LONG BINARY"
Using D6 with ODAC version "6.10.1.10 02.08.07"
Does anybody have any ideas on how to do it.
I know "LONG RAW" and "LONG" has been replaced by BLOB and CLOB, but I still need it for legacy systems.
Thanks
Michael
I wish to insert a record into Oracle's "LONG RAW" or "LONG" fields.
Code used:
OraQuery1.Session.Connect;
OraQuery1.SQL.Text := 'INSERT INTO "MICHAEL"."TEST_ALL" ("TESTLONGRAW") VALUES (EMPTY_BLOB()) RETURNING TESTLONGRAW INTO :TESTLONGRAW ';
OraQuery1.ParamByName('TESTLONGRAW').ParamType := ptInput;
OraQuery1.ParamByName('TESTLONGRAW').LoadFromFile('C:\cvs\Projects\DataProducer\bin\klein.jpg', ftBlob);
OraQuery1.ExecSQL;
I get an error: "ORA-00932: inconsistent datatypes: expected NUMBER got LONG BINARY"
Using D6 with ODAC version "6.10.1.10 02.08.07"
Does anybody have any ideas on how to do it.
I know "LONG RAW" and "LONG" has been replaced by BLOB and CLOB, but I still need it for legacy systems.
Thanks
Michael