If input parameter size more 4000 than raised exception ORA-01460: unimplemented or unreasonable conversion requested.
Code: Select all
procedure TForm2.Button1Click(Sender: TObject);
var
i : Integer;
s : string;
begin
OraSQL1.SQL.Text := 'declare x varchar2(32767); begin x := :v; end;';
OraSQL1.ParamByName('v').DataType := ftString;
OraSQL1.ParamByName('v').Size := 32767;
s := '';
for i := 1 to 4001 do
s := s + 'a';
OraSQL1.ParamByName('v').AsString := s;
OraSQL1.Execute;
end;