繁体   English   中英

使用 ADO.NET 的只读查询

[英]Read only queries Using ADO.NET

我想将应用程序限制为只读查询。 换句话说,我希望应用程序只处理那些不会改变数据库状态的查询。 我正在使用 ADO.NET。 我不想针对具有只读权限的数据库创建新用户。 欢迎任何建议。

选项 1:SQL 身份验证

您可以使用如下所示的连接:

Server ={serverName}; Initial Catalog = {DB_Name}; User Id={uid}; Password={pwd};

使用仅在数据库中具有读取权限的 uid。

选项 2:Windows 身份验证

如果要使用Integrated Security = True; (即 windows 身份验证),那么您必须授予 windows 用户的只读访问权限(程序在该用户下运行)。

希望这可以帮助。

您可以创建触发器以通过数据库级​​别的触发器取消任何插入更新或删除。 触发器将以回滚结束以取消事务。 您必须弄清楚是谁启动了触发器,以便其他用户可以更新数据库。

我不会这样做 - 我会从用于应用程序的帐户中取消任何许可(选择除外)。 我创建了很多很多触发器,但我从未听说有人使用数据库触发器来强制只读。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM