C# 如何使ADO.Net连接(SQL Server或Oracle数据库)为只读

C# 如何使ADO.Net连接(SQL Server或Oracle数据库)为只读,c#,sql-server,ado.net,C#,Sql Server,Ado.net,我试过了 conn.Connectionstring = conn.Connectionstring + "; Read Only=True"; 还有各种各样的变化,但它们都抛出了一个例外 不支持关键字-“只读” 我完全理解异常具体告诉我的是什么,但这并不能解决我的问题,即如何临时将连接设为只读(在打开之前),并在关闭后将其恢复到原始状态 我认为您的问题不是在连接字符串中解决的,而是在您打开连接时使用的用户上下文中解决的 如果指定的用户仅具有读取数据的权限,则您具有“只读”连接 根据下面的评

我试过了

conn.Connectionstring = conn.Connectionstring + "; Read Only=True";
还有各种各样的变化,但它们都抛出了一个例外

不支持关键字-“只读”


我完全理解异常具体告诉我的是什么,但这并不能解决我的问题,即如何临时将连接设为只读(在打开之前),并在关闭后将其恢复到原始状态

我认为您的问题不是在连接字符串中解决的,而是在您打开连接时使用的用户上下文中解决的

如果指定的用户仅具有读取数据的权限,则您具有“只读”连接


根据下面的评论,ado.net连接可接受的关键字列表如下:


我认为你的尝试是不可能的。用户帐户是使用ADO.net和SQL server控制DB访问的方式。

请尝试:我找到了SQL server的“Mode=Read Only”。您能更具体一些吗?我在Sql Server页面中找不到这种方法。我必须使用现有的数据库登录帐户,但如果可能,暂时将连接限制为“只读”。否则,我必须维护两种类型的连接,只读和可写,这不是一个选项。