SQL Server存储过程问题(50分)

  • 主题发起人 主题发起人 ningliu
  • 开始时间 开始时间
N

ningliu

Unregistered / Unconfirmed
GUEST, unregistred user!
在Delphi 4 中使用SQL Server 7的存储过程,执行时出现错误如下:
Project mdiapp.exe raised exception class EDBEngineError with
Message 'General SQL error. [Microsoft][ODBC SQL Server Driver]
Indicator variable required but not supplied'.
我可是将参数对应都赋值了呀,并且在另一个程序内执行类似的语句都很正常
用过这个东东的大虾发表发表意见.
还有明明我的程序些的正确,但报错什么某个参数不被支持,我在Delphi中
将StoredProc中的ProcName内容删掉,再重新输入一次,打开一下参数表,
然后就Ok了.这到底是怎么会事?
 
从错误来看, 是你的sp要的参数, 你没有提供.
如create procedure test (@a char(10),@b int)
你用execute test 'good'
就会产生错误.
如果storedproc出问题, 应该是sql7的问题, d4对它的支持不好. 建议你用query
来执行sp, 而不用storedproc来执行, 出错机会会少一些.
 
用Query怎么将参数值传回来?
比如说如下写Query的SQL
exec ProcedureName :Param1,:Param2,:Param3 output
在过程中将Param3置为1,怎么回来的Param3是0?
 
呵呵, 这样:
create procedure test (@a char(10))
as
select @a as isok
然后exec test('good');
返回: query1.fieldbyname('isok').asstring就是@a.
 
多人接受答案了。
 
后退
顶部