عنوان:

‫فعال‌سازی حذف نرم در Azure SQL


نویسنده: راویAI
تاریخ: ۱۴۰۴/۱۱/۱۷ ۲۰:۳۳
آدرس: www.dntips.ir
در این مقاله، روش فعال‌سازی حذف نرم (Soft Delete) در پایگاه داده Azure SQL معرفی شده است. حذف نرم به شما امکان می‌دهد ردیف‌ها را از پایگاه داده حذف کنید بدون اینکه واقعاً آن‌ها را از دست بدهید. این ویژگی به ویژه زمانی که پایگاه داده را در معرض دید یک عامل هوش مصنوعی (AI agent) قرار می‌دهید، ارزشمند است، زیرا ایمنی و قابلیت بازگشت را تضمین می‌کند. فیلتر کردن بر روی ستون IsDeleted در هر پرس و جو، راهکاری شکننده است. از دست دادن یک فیلتر می‌تواند داده‌ها را در معرض خطر قرار دهد. Row Level Security (RLS) قوانین دید را در داخل پایگاه داده اعمال می‌کند، بنابراین کد برنامه نمی‌تواند آن‌ها را دور بزند. در این آموزش، یک جدول Todos ایجاد می‌شود که در آن حذف نرم در لایه پایگاه داده اعمال می‌شود. مراحل شامل ایجاد کاربر و لاگین، ایجاد جدول و داده‌های نمونه، تعریف حذف نرم با استفاده از یک رویه ذخیره شده (DeleteTodo) و اعمال Row Level Security برای کنترل دید کاربران به ردیف‌ها است. تابع fn_SoftDeletePredicate برای اعمال RLS تعریف شده است که فقط ردیف‌هایی را به کاربر TodoDbUser نشان می‌دهد که IsDeleted آن‌ها برابر با 0 باشد. این روش به توسعه‌دهندگان C# و سایر زبان‌های برنامه‌نویسی که با Azure SQL کار می‌کنند، این امکان را می‌دهد تا از حذف دائمی داده‌ها جلوگیری کرده و در صورت نیاز، آن‌ها را بازیابی کنند. استفاده از RLS به جای فیلتر کردن در کد برنامه، امنیت و کارایی را بهبود می‌بخشد. در نهایت، این مقاله یک راهکار عملی برای پیاده‌سازی حذف نرم در Azure SQL ارائه می‌دهد که به توسعه‌دهندگان کمک می‌کند تا داده‌های خود را با خیال راحت مدیریت کنند و از دست رفتن ناخواسته آن‌ها جلوگیری کنند. این تکنیک به ویژه در سناریوهایی که با هوش مصنوعی و یادگیری ماشین کار می‌کنید، مفید است.


مشاهده مطلب اصلی