我写了一个存储过程:
create or replace procedure MyProcedure(b_id in varchar2,bpercent in number) is
begin
update book b set b.b_price = b.b_price*(1+bpercent)
where b.b_id = b_id;
end MyProcedure;在类里面调这个存储过程的程序如下:
procedure TFrmMain.Button1Click(Sender: TObject);
begin
FrmDm.StoredProc.Params.ParamByName('b_id').Value :=
ComboBox1.Text;
FrmDm.StoredProc.Params.ParamByName('Bpercent').Value:=
StrToFloat(edit1.Text);
FrmDm.StoredProc.ExecProc;
FrmDm.StoredProc.Refresh;
end;
但报 ‘PL/SQL 数字或值错误:字符到数值的转换错误’
我设置的b_id的类型是varchar2(20)
哪位高手可以帮帮我!我
create or replace procedure MyProcedure(b_id in varchar2,bpercent in number) is
begin
update book b set b.b_price = b.b_price*(1+bpercent)
where b.b_id = b_id;
end MyProcedure;在类里面调这个存储过程的程序如下:
procedure TFrmMain.Button1Click(Sender: TObject);
begin
FrmDm.StoredProc.Params.ParamByName('b_id').Value :=
ComboBox1.Text;
FrmDm.StoredProc.Params.ParamByName('Bpercent').Value:=
StrToFloat(edit1.Text);
FrmDm.StoredProc.ExecProc;
FrmDm.StoredProc.Refresh;
end;
但报 ‘PL/SQL 数字或值错误:字符到数值的转换错误’
我设置的b_id的类型是varchar2(20)
哪位高手可以帮帮我!我
procedure TFrmMain.Button1Click(Sender: TObject);
begin
FrmDm.StoredProc.Params.ParamByName('b_id').Value :=
ComboBox1.Text;
FrmDm.StoredProc.Params.ParamByName('Bpercent').Value:=
StrToFloat(edit1.Text);
FrmDm.StoredProc.ExecProc;
// FrmDm.StoredProc.Refresh; 这句不要
end;
ora-06502 pl/SQL 数字或值错误 字符到数值的转换错误
ora-06512 在line1
错误
ora-06502 pl/SQL 数字或值错误 字符到数值的转换错误
ora-06512 在line1
错误
ora-06502 pl/SQL 数字或值错误 字符到数值的转换错误
ora-06512 在line1
错误