.net – 可以从存储过程返回一个varchar(max)吗?
具有SQL Server 2005后端的VB.net Web系统.我有一个存储过程返回一个varchar,我们终于得到了不适用于varchar(8000)的值.
我将return参数更改为varchar(max),但是如何告诉OleDbParameter.Size属性来接受任何数量的文本? 作为一个具体的例子,从存储过程中得到返回参数的VB代码看起来像: objOutParam1 = objCommand.Parameters.Add("@RStr",OleDbType.varchar) objOutParam1.Size = 8000 objOutParam1.Direction = ParameterDirection.Output 我可以做些什么?使用(最大)? 更新: 回答一些问题: 对于所有意图和目的,这个文本都需要作为一个大块出来. (改变这个比我想要做的更多的结构性工作,或者真的被授权) 如果我没有设置大小,我会收到错误“String [6]:Size属性的大小为0”. 解决方法Upvoted Ed Altofer. (他首先回答,所以如果你喜欢我的答案投票他也).OleDb是你的问题.这是一个通用的数据库连接,需要与SQL Server不仅仅是交谈,因此您具有最低的公分母情况,只有最弱的组合功能集可以完全支持.其中一个丢失的功能是varchar(max)支持. 您正在使用SQL Server 2005和VB.Net.什么阻止您使用System.Data.SqlClient而不是System.Data.OleDb? 编辑 相关部分:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |