SQL التأكيد/الزناد:كيفية تعيين سمة تمنع خفض التحديثات
سؤال
لدي جدول يسمى الشخص ، واحدة من السمات years_worked.
أنا بحاجة إلى إيجاد وسيلة لتقييد years_worked من أن ينخفض ، بحيث الزناد/التأكيد (غير متأكد ما هنا) سوف تسمح فقط يزيد على التحديثات.
المحلول
رمز أدناه سوف تعود فقط جميع years_worked
تحديث القيم التي لا تقع في القيد الخاص بك مرة أخرى إلى ما كانت عليه قبل التحديث.هذا هو SQL Server, أنا لا أستطيع أن أتكلم عن الأخرى RDBMS'.
create trigger RestrictYearsWorked
on person
after update
as
update person
set years_worked = d.years_worked
from person p
inner join deleted d
on p.yourIdCol = d.yourIdCol
where p.years_worked < d.years_worked
go
لا تنتمي إلى StackOverflow