|
2#
楼主 |
发表于 2009-7-17 15:30:01
|
只看该作者
又试了一下
cmd.CommandText = "{call test.p_test(?,?)}"
cmd.Parameters.Append cmd.CreateParameter("@p_contentstr",3,1 )
cmd("@p_contentstr")="1111"
cmd.Parameters.Append cmd.CreateParameter("@p_retcode",3 ,4 )
这样写的话
通过cmd.Parameters.item(1)能取得存储过程中的返回值 但是又遇到新的问题
将 cmd("@p_contentstr")="1111"改成 cmd("@p_contentstr")="adbda" 就会出现“应用程序在当前操作中使用了错误类型的值”这个错误 ,这个问题就在 cmd.CreateParameter("@p_contentstr",3,1 )这里
中间的3代表的数据类型是adInteger,这就是为什么“1111”的时候能通过的原因
这里想请教一下 其他数据类型 比如VarChar之类的 ,CreateParameter()函数中的数据类型枚举是多少
我参考了下面的http://www.w3school.com.cn/ado/app_datatypeenum.asp,但是试了所有的字符串类型的枚举,
结果都报了这个错误 “不正常地定义参数对象。提供了不一致或不完整的信息。”
请大家帮帮忙 谢谢 |
|