Sql server 2005 Sql阻止修改行
可以防止对sql中的行进行任何更改吗 假设记录已创建。但一旦它被创建,我就不想再修改记录了Sql server 2005 Sql阻止修改行,sql-server-2005,Sql Server 2005,可以防止对sql中的行进行任何更改吗 假设记录已创建。但一旦它被创建,我就不想再修改记录了 因此,用户仍然可以尝试更新表集合column=value。。但这会引发一个错误,防止它被修改成类似的东西。您应该在表上放置一个触发器 触发器可以用旧值替换任何新值,以静默方式拒绝更新,也可以向用户抛出异常,表示不允许更新 或 您可以将INSERT权限分配给用户,但不能将UPDATE权限分配给用户。您应该在表上设置触发器 触发器可以用旧值替换任何新值,以静默方式拒绝更新,也可以向用户抛出异常,表示不允许更新
因此,用户仍然可以尝试更新表集合column=value。。但这会引发一个错误,防止它被修改成类似的东西。您应该在表上放置一个触发器 触发器可以用旧值替换任何新值,以静默方式拒绝更新,也可以向用户抛出异常,表示不允许更新 或
您可以将INSERT权限分配给用户,但不能将UPDATE权限分配给用户。您应该在表上设置触发器 触发器可以用旧值替换任何新值,以静默方式拒绝更新,也可以向用户抛出异常,表示不允许更新 或
您可以将插入权限分配给用户,但不能将更新权限分配给用户。是的,如果用户不执行类似操作,您可以使用触发器执行此操作
alter table disable trigger
update table...
您还可以像这样拒绝该列的更新(SQL Server 2005及以上语法)
是的,如果用户不这样做,您可以使用触发器来完成
alter table disable trigger
update table...
您还可以像这样拒绝该列的更新(SQL Server 2005及以上语法)
如果SQLServer允许这种细粒度的访问控制,最简单的方法是撤销表上的更新
请注意,恶意用户仍然可以删除,然后插入另一条“已更改”的记录。如果SQL server允许这种细粒度的访问控制,最简单的方法是撤销表上的更新
请注意,恶意用户仍然可以删除,然后插入另一条“已更改”的记录。当然,如果您使用了存储的过程,并且没有更新过程wirtten,并且用户没有对表的直接访问权限,那么他们就无法更新记录,因为他们没有可用的方法。并确保写入触发器来处理多个记录更新。当然,如果您使用了存储过程,并且没有更新过程wirtten,并且用户没有对表的直接访问权限,那么他们就不能更新记录,因为他们没有可用的方法。并确保写入触发器以处理多个记录更新