سلام

یک برنامه جهت ثبت و ویرایش اطلاعات در بانک اطلاعاتی نیاز داره تا مقادیر خاصی رو در بانک بررسی کنه. به عنوان مثال در زمان ثبت مشخصات پرسنل در بانک، باید بررسی شود که آیا شماره ملی تکراری است یا خیر و در صورت عدم وجود شماره ملی، مشخصات ثبت می شود. اما سوال:


  • حالت اول: من میتونم به ازاء هر پارامتری که نیاز به بررسی داره یک تابع در SQL بنویسم و متناسب با جواب های برگشت داده شده به کاربر پیغام مناسب رو نمایش بدم. مثلا اگر قرار باشه 5 آیتم بررسی بشه پس باید 5 تابع و یا پروسیجر داشته باشم که به نسبت مقدار برگشتی هرکدام، یک پیغام متاسب نمایش بدم
  • حالت دوم: میتونم تمام بررسی ها رو در ابتدای دستورات SQL بنویسم و در انتها عملیات مورد نظر رو انجام بدم و نتیجه رو با @@ROWCOUNT برگردونم که در صورت صحیح نبودن هر کدام از 5 آیتم مورد بررسی، مقدار 0 برگردانده خواهد شد.
  • حالت سوم: میشه هر دو حالت بالا رو پیاده کرد. علت ایجاد حالت دوم اینه که در صورت استفاده مستقیم از پروسیجر، خیالم راحته که اطلاعات به درستی ثبت میشه ولی در صورت عدم ثبت اطلاعات جدید، علت معلوم نیست


حالا موضوع اصلی اینه که بهترین و منطقی ترین روش کدومه، میخوام بین Performance و دقت کارکرد برنامم تعادل برقرار باشه و تنها بخاطر عملکرد بهتر، دقت رو از بین نبرم. امیدوارم مطلب رو مبهم توضیح نداده باشم

ممنون اگر راهنمایی کنید