[英]What is a difference between BEFORE and AFTER dml operations ? (Row-Level Security)
我已經為我的Ms Sql Server數據庫創建了安全策略。 我試圖找出BEFORE和AFTER dml操作之間的區別。 知道使用它的理由是很好的。 我找不到任何關於我話題的明確表述。
CREATE SECURITY POLICY [Security].DealershipsCarsFilter
ADD FILTER PREDICATE [Security].fn_securitypredicate(DealershipId)
ON dbo.[DealershipsCars],
ADD BLOCK PREDICATE [Security].fn_securitypredicate(DealershipId)
ON dbo.[DealershipsCars] AFTER INSERT
WITH (STATE = ON);
對於UPDATE
,您可以為BEFORE
和AFTER
指定不同的策略,以允許您在應用更新之前評估行中的舊值以及應用更新后的行中的新值。 或者您可能希望在兩種情況下都應用相同的策略。 這是你的選擇。
對於INSERT
或DELETE
,您只能分別選擇AFTER
或BEFORE
,因為這些行在另一個狀態中不存在 。
這是一個很長的路要說,在這里之前和之后沒有一些深刻的技術含義,而是采用了他們簡單的英語含義。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.