【问题标题】:How to specify ReadOnly query in C# using SqlCommand()如何使用 SqlCommand() 在 C# 中指定只读查询
【发布时间】:2019-10-20 20:34:25
【问题描述】:

我将 C# 与 .NET SqlDataReader()SqlConnection()SqlCommand().ExecuteReader() 类一起使用。

在 vbScript 中,我可以像这样打开 RecordSet:

rs.open cSQL, cn, adOpenForwardonly, adLockReadonly

rs.open 语句可以被赋予参数以进行 ForwardOnly 和 ReadOnly 查询。

如何使用 C# 及其 SqlCommand() 类做同样的事情?

【问题讨论】:

  • 您不能用SqlCommand 真正做到这一点 - 当前用户是否可以编辑某些内容的问题取决于 SQL Server 数据库中的 权限 - 而不是访问技术(ADO.NET、实体框架等)

标签: c# .net sql-server sqlcommand


【解决方案1】:

在 ADO.NET 中,您处理它的方式与过去不同,您必须将游标指定为仅向前等。您正在寻找的方法称为 ExecuteReader。考虑以下代码...

SqlCommand command = new SqlCommand(sqlQueryString, connection);
var reader = command.ExecuteReader();

这会为您提供一个 SqlDataReader,其中包含您的值,并且本质上是一个只转发、只读的结构。

【讨论】:

  • 糟糕。我正在使用 .ExecuteReader() 方法。忘记在原始帖子中包含该内容。我编辑并添加了它。谢谢。
猜你喜欢
  • 2015-09-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多