通过 sql datareader 获取时字符串数据被截断

发布于 2024-10-07 18:21:15 字数 199 浏览 3 评论 0原文

我正在使用数据读取器通过存储过程获取表的记录值。 但是当使用datareader.getstring(2)获取特定列的值时,返回的字符串被截断的其余部分getstrings 返回完整值)。 谁能指导我分析这个?

I am using a datareader to fetch a table's record values through a stored proc.
but while using datareader.getstring(2) to fetch the value of the particular column, the string returned is truncated ( rest of getstrings are returning complete values).
Can anyone guide me in analyzing this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

雄赳赳气昂昂 2024-10-14 18:21:15

当您使用 SqlDataReader 对象时,XML 数据行被截断为 2,033 个字符。要解决此问题,请使用 ExecuteXmlReader 方法读取 FOR XML 查询。有关如何将 ExecuteXmlReader 与 SQL Server FOR XML 查询结合使用的其他信息
https://support.microsoft.com/en-us/kb/310378
https://support.microsoft.com/en-us/kb/316701

The XML data row is truncated at 2,033 characters when you use the SqlDataReader object. To resolve this problem, use the ExecuteXmlReader method to read FOR XML queries. For additional information about how to use ExecuteXmlReader with SQL Server FOR XML queries
https://support.microsoft.com/en-us/kb/310378
https://support.microsoft.com/en-us/kb/316701

呆° 2024-10-14 18:21:15

更改您的数据库逻辑如下,

Declare @xmldata xml
set @xmldata =(<your select query>  
FOR XML AUTO)
select @xmldata as returnXml

并从 c# 即 objReader[0] 读取列 returnXml

Change your Db logic as following,

Declare @xmldata xml
set @xmldata =(<your select query>  
FOR XML AUTO)
select @xmldata as returnXml

And read column returnXml from c# i.e. objReader[0]

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文