存储过程如下:
create or replace procedure proce_test(code_input in varchar2,newcode_input in varchar2,time_input in number)
is
begin
declare p st_geometry;
t_x number(38,8);
t_y number(38,8);
t_z number(38,8);
begin
select shape into p from bill where code=code_input;
select x into t_x from bill where code=code_input;
select y into t_y from bill where code=code_input;
select z into t_z from bill where code=code_input;
insert into bill (OBJECTID_1,objectid,code,x,y,z,starttime,endtime,shape) values(seq.nextval,0,newcode_input,t_x,t_y,t_z,time_input,0,p);
end;
end proce_test;问题:在asp.net后台调用存储过程时报错,说starttime字段类型错误oracle11g存储过程数据类型
create or replace procedure proce_test(code_input in varchar2,newcode_input in varchar2,time_input in number)
is
begin
declare p st_geometry;
t_x number(38,8);
t_y number(38,8);
t_z number(38,8);
begin
select shape into p from bill where code=code_input;
select x into t_x from bill where code=code_input;
select y into t_y from bill where code=code_input;
select z into t_z from bill where code=code_input;
insert into bill (OBJECTID_1,objectid,code,x,y,z,starttime,endtime,shape) values(seq.nextval,0,newcode_input,t_x,t_y,t_z,time_input,0,p);
end;
end proce_test;问题:在asp.net后台调用存储过程时报错,说starttime字段类型错误oracle11g存储过程数据类型
OracleParameter[] parameters ={
new OracleParameter("code_input",OracleType.VarChar,16),
new OracleParameter("newcode_input",OracleType.VarChar,18),
new OracleParameter("currenttime",OracleType.Number,20)
};
parameters[0].Value = code;
parameters[1].Value = newFileNameWithoutExtention;
parameters[2].Value = currenttime;
parameters[0].Direction = ParameterDirection.Input;
parameters[1].Direction = ParameterDirection.Input;
parameters[2].Direction = ParameterDirection.Input;
foreach (OracleParameter parameter in parameters)
{
cmd.Parameters.Add(parameter);
}
其中: code, newFileNameWithoutExtention为string类型,currenttime为double类型。