K
kingfisher
Unregistered / Unconfirmed
GUEST, unregistred user!
下面一段代码问题处在何处? 运行时总报错:
Field ‘@Price‘?is of an unknown type
数据库是sql server 存储过程也没问题 我已经改成最简单的一句了,
在sql server的 aql analyzer中执行没问题
wtstoredproc:=TStoredProc.Create(nil);
wtstoredproc.DatabaseName:=emdbdatabasename;
wtstoredproc.StoredProcName:='wtcheck';
wtstoredproc.params.Clear;
p1:=TParam.Create(wtstoredproc.params,ptInput);
p2:=TParam.Create(wtstoredproc.params,ptOutput);
try
wtstoredproc.params[0].Name:='@orderno';
// wtstoredproc.params[0].DataType:=ftString;
wtstoredproc.params[1].Name:='@price';
// wtstoredproc.params[1].DataType:=ftString;
wtstoredproc.parambyname('@orderno').asstring:=varorderno;
wtstoredproc.Prepare;
wtstoredproc.ExecProc;
varprice:=wtstoredproc.parambyname('@price').asstring;
finally
wtstoredproc.free;
p1.Free;
p2.Free;
end;
困扰多时
将注释中语句加上 出错为:
no parameter type for parameter @orderno
Field ‘@Price‘?is of an unknown type
数据库是sql server 存储过程也没问题 我已经改成最简单的一句了,
在sql server的 aql analyzer中执行没问题
wtstoredproc:=TStoredProc.Create(nil);
wtstoredproc.DatabaseName:=emdbdatabasename;
wtstoredproc.StoredProcName:='wtcheck';
wtstoredproc.params.Clear;
p1:=TParam.Create(wtstoredproc.params,ptInput);
p2:=TParam.Create(wtstoredproc.params,ptOutput);
try
wtstoredproc.params[0].Name:='@orderno';
// wtstoredproc.params[0].DataType:=ftString;
wtstoredproc.params[1].Name:='@price';
// wtstoredproc.params[1].DataType:=ftString;
wtstoredproc.parambyname('@orderno').asstring:=varorderno;
wtstoredproc.Prepare;
wtstoredproc.ExecProc;
varprice:=wtstoredproc.parambyname('@price').asstring;
finally
wtstoredproc.free;
p1.Free;
p2.Free;
end;
困扰多时
将注释中语句加上 出错为:
no parameter type for parameter @orderno