کار با Validation Rule در اکسس به همراه مثال های کاربردی

validation rule  یکی از قابلیت های کاربردی و مهم است که در حین طراحی جداول در اکسس می توانید از آن استفاده ببرید.

اگر بخواهید بعنوان یک طراح بانک اطلاعاتی در اکسس در سطح حرفه ای کار کنید باید با قواعد و قوانین مربوط به اعتبار سنجی یا در اصطلاح validation rule در اکسس بخوبی آشنا باشید . 

بعنوان یک طراح بانک اطلاعاتی اعتبار سنجی و داستانهای مربوط به آن از مواردی است که بطور متعدد با آن سرو کار خواهید داشت.

اجازه بدهید یک مثال برای شما بزنم تا همین ابتدای کار با این مفهوم بهتر آشنا شوید .

حتما تا به حال پیش آمده که بخواهید در یک سایت اینترنتی ثبت نام کنید .

وقتی فیلدهای مربوط به اطلاعات شخصی خود را تکمیل می کنید به فیلد تعیین پسورد می رسید .

در این فیلد یک سری قوانین برای تعیین پسورد در نظر گرفته شده است .

بعنوان مثال از شما خواسته می شود که :

۱-  پسورد وارد شده کمتر از ۸ کاراکتر نباشد .

۲- پسورد شما باید شامل حروف و اعداد باشد .

۳- پسورد وارد شده  باید حداقل دارای یک حرف بزرگ باشد .

۴- استفاده از کاراکترها و حروف الفبای فارسی برای تعیین پسورد مورد قبول نمی باشد  .

در اینجا ۴ شرط را برای تعیین یک پسورد از سوی کاربر تعیین کرده ایم .

رعایت هر کدام از این ۴ شرط هم برای کاربر الزامی است .

یعنی کافی است که کاربر فقط یک شرط از این شروط را رعایت نکند. 

در اینصورت سایت مربوطه از پذیرش پسورد وارد شده امتناع کرده موارد اشکال را توسط پیغام مناسب به اطلاع کاربر می رساند و مانع از ادامه کار کاربر می شود .

اما واقعا چگونه یک سایت همه این موارد را کنترل می کند ؟

آیا در ین کار رازی نهفته است ؟

آیا برای ایجاد این قابلیت نیاز به برنامه نویسی و کد نویسی های طولانی است ؟

البته در اینجا نه موضوع بحث ما طراحی سایت است و نه اینکه می خواهیم بدانیم که چگونه این کارها توسط یک سایت انجام می شود .

ما در اینجا می خواهیم بدانیم که اگر زمانی احتیاج به این پیدا کردیم که یک سری قواعد و قوانین برای اطلاعات وارد شده از سوی کاربر  در بانک اطلاعاتی اکسس خود ایجاد کنیم ، چگونه می توانیم این کار را انجام دهیم . 

و اصلا چه مواقعی احتیاج پیدا می کنیم که بخواهیم کاربر خود را ملزم به رعایت قواعد خاصی در ورود اطلاعات بکنیم

همین ابتدای کار باید بگویم که تمامی این کارهایی را در اینجا ذکر کردم را  با استفاده از قابلیتی تحت عنوان  validation rule  به راحتی می توانیم انجام دهیم .

  validation rule  یا همان قوانین اعتبار سنجی  در واقع این امکان را برای شما فراهم می آورد که برای هر کدام از فیلدهای اطلاعاتی مربوط به جداول خود قوانینی را در نظر بگیرید.

از این طریق کاربر فقط در چارچوب قوانین شما قادر به ورود اطلاعات به این فیلدها باشد.

بطور کلی فرآیند اعتبار سنجی داده ها در اکسس بصورت زیر است که :

در قدم اول برنامه ما اطلاعاتی را از کاربر دریافت می کند.

در قدم بعدی برنامه این اطلاعات را بررسی می کند و آنها را می سنجد که آیا این اطلاعات معتبر هستند یا خیر؟

اگر اطلاعات معتبر بودند که آنها را ذخیره می کند یا سایر فرآیندهای تعریف شده را انجام می دهد .

اما اگر این اطلاعات از نظر برنامه معتبر نبودند چه اتفاقی می افتد ؟

در اینصورت برنامه یک پیغام را به کاربر نمایش می دهد و به کاربر اطلاع می دهد که اطلاعات وارد شده وی از نظر برنامه معتبر نیست .

و مانع از کار کاربر می شود تا زمانی که اطلاعات را بصورت معتبر و درست وارد نماید .. 

این کار موجب می شود که امکان بروز خطا در ورود اطلاعات از سوی کاربر  تا حد زیادی کنترل شده و احتمال وقوع این خطاها تا حد صفر کاهش پیدا کند .

اما اینکه این validation rule چیست و چگونه باید با آن کار کرد مطلبی است که امروز من علیرضا شهرآئینی می خواهم در این زمینه با شما مفصل در مورد آن صحبت کنم.

validation rule

آشنایی  و کار با validation rule 

بطور کلی اطلاعاتی را که شما می توانید در یک جدول اکسس ذخیره نمایید شامل موارد زیر است 

– متن ها و نوشته ها 

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

– اعداد و ارقام 

اطلاعاتی از قبیل سن ، میزان قد ، شماره تلفن، کد پستی و …. مواردی هستند که می توان آنها را در قالب اعداد و ارقام از کاربر دریافت نمود . 

تاریخ 

تاریخ تولد ، تاریخ ازدواج، تاریخ استخدام و ….. را نیز می توان با فرمت تاریخ از کاربر دریافت نموده و در جداول ذخیره نمود . 

 برای توضیح بهتر مطلب جدول زیر را در نظر بگیرید .

validation rule

 

در جدول فوق با  هر سه طیف داده شامل متن  ، عدد  و  تاریخ  سر و کار داریم . 

حال اگر بخواهیم ترتیبی را فراهم آوریم که در  هر فیلد کاربر فقط اطلاعات مرتبط با همان فیلد را وارد نماید یعنی کاربر در فیلد مربوط به معدل فقط  بتواند عدد را وارد نماید و قادر به وارد کردن متن نباشد باید به سراغ قابلیت Validation Rule  برویم . 

در این سری از  آموزش ها  به طور مفصل در خصوص نحوه تعیین قواعد مد نظر خودمان برای هر نوع داده خواهیم پرداخت . 

validation rule

تعیین قواعد اعتبار سنجی برای داده های متنی 

 ما برای ایجاد قواعد مورد نظر خودمان برای فیلدهایی که قرار است فقط حاوی متن ها باشند از تعدادی از علائم و عبارات استفاده می کنیم.

از آنجا که هر کدام از این علائم و عبارات برای اکسس دارای معنا و مفهوم خاصی هستند بنابراین ما نیز باید با مفهوم هر کدام از آنها بخوبی آشنا شویم تا بتوانیم با استفاده درست از آنها در محل های مناسب اکسس را در انجام آنچه که ما می خواهیم برایمان انجام دهد را به خوبی راهنمایی نماییم .

پس در گام نخست با این علائم در جدول زیر آشنا می شویم .

 

                      عنوان کاراکتر                                   شرح  کاربرد 

 

                      Like                            از این عبارت برای شناساندن عبارت شرطی به اکسس استفاده می شود 

                     NOT                            این عبارت عملکردی مخالف عبارت LIKE  دارد 

                  And,Or,in                        از این عبارات برای تعیین چند شرط بطور همزمان استفاده می شود .

                       ؟                                      این علامت حکم یک کاراکتر(شامل حروف – اعداد- و دیگر علائم ) را دارد . 

                        !                                       این علامت به مفهوم  استثناء می باشد .

                       #                                      این علامت صرفا نماینده   یک عدد یا یک رقم  می باشد .

                      [ ]                                      این علامت برای مد نظر قرار دادن  تعدادی  از کاراکترها   می باشد .

                       _                                       این علامت برای ایجاد    یک محدوده از  کاراکترها   استفاده می شود  .

                       *                                       این علامت می تواند  نمایانگر   چندین کاراکتر   می باشد .

 

به جدول بالا نگاه کنید .

این جدول شامل یک سری از علائم و کاراکترها می باشد .

اینها ابزاری هستند که ما با استفاده از آنها می توانیم یک قاعده خاص را برای وارد کردن اطلاعات از سوی کاربر تعریف کنیم .

اما مسلما در نگاه اول این کاراکترها  و حتی تعاریفی که برای هر کدام در این جدول وجود دارد برای ما نامفهوم می باشد .

بنابراین بهتر است که از هر کدام از این کاراکترها در عمل استفاده کنیم تا بهتر مفهوم و کاربرد هر یک را متوجه شویم . 

پس با من همراه باشید .

validation rule

– علامت   ؟

این  علامت  نشان دهنده یک کاراکتر  می باشد .

دقت کنید که منظور از کاراکتر می تواند یک حرف ، یک عدد ، یک علامت خاص مثل @-#-$ و …. باشد. 

اما این علامت چه کاربردی می تواند برای ما داشته باشد ؟

کاربرد این علامت برای این است که معین نمایید که کاربر حداکثر چند کاراکتر  را  وارد کند .

بعنوان مثال  با قرار دادن  ؟؟؟ در قسمت  validation rule  کاربر فقط می تواند  سه کاراکتر از هر نوعی را در فیلد درج نماید .

فرض کنید می خواهیم کاربر بیشتر از ۴ کاراکتر  را در فیلد مربوط به نام نتواند وارد نماید .

برای این منظور به این صورت عمل می کنیم  :

 

همانطور که می بینید کافی است در قسمت Validation Rule  به جای تعداد حروفی که مدنظر داریم از علامت سوال استفاده کنیم .

حال اگر کاربر اطلاعاتی را که وارد می کند کمتر یا بیشتر از ۴ کاراکتر باشد  اکسس از کاربر خطا گرفته و پیغامی را که ما برای اکسس در قسمت Validation Text  وارد کرده ایم را به عنوان راهنما به کاربر نمایش می دهد .  

دقت کنید که این عبارت کنترل نمی کند که کاربر حتما از حروف برای وارد کردن اطلاعات استفاده کند بلکه فقط برای اکسس مهم است که طول اطلاعات وارد شده از ۴ کاراکتر کمتر یا بیشتر نشود . 

– عبارت Like 

این عبارت اپراتوری  است که به اکسس می گوید نوشته ای که توسط کاربر وارد این فیلد می شود ،  باید شبیه الگویی باشد که اینجا مشخص می کنیم. 

–  عبارت NOT

این عبارت عملکردی مخالف LIKE  دارد به گونه ای که با استفاده از عبارت Like به اکسس می گوییم که عبارت وارده باید شبیه الگوی تعریف شده باشد اما اگر بخواهیم که با الگوی ما شباهت نداشته باشد از عبارت NOT استفاده می کنیم . 

 

–  عبارات  And,Or,in

هرگاه بخواهیم برای  کاربر بیشتر از یک قانون جهت ورود اطلاعات تعیین کنیم از این عبارات استفاده می کنیم .

به این صورت که :

– اگر برای ورود اطلاعات در یک فیلد دو شرط مد نظر داشته باشیم و در عین حال کاربر ملزم باشد که هر دو شرط را رعایت کند بین این دو شرط از عبارت And  استفاده می نماییم . 

–  اگر دو یا چند شرط داشته باشیم ولی لازم نباشد که کاربر همه شرطها را رعایت نماید در بین این شرط ها از عبارت OR  استفاده می شود . 

–   اگر بخواهیم ورود اطلاعات از سوی کاربر را محدود به اطلاعات مشخص یا محدوده ای از اطلاعات نماییم از عبارت IN استفاده می نماییم .  

 

– کاراکتر !

این کاراکتر عملکردی بر خلاف عبارت IN دارد.

به این ترتیب که با استفاده از عبارت IN تعیین می کنیم که کاربر فقط بتواند یکی از مقادیری که ما برایش تعیین می کنیم را وارد نماید 

اما اگر بخواهیم کاربر را از استفاده از مقادیر خاصی باز داریم باید قبل از این مقادیر از علامت ! استفاده کنیم . 

مثال های مربوط به  این اپراتور را در ادامه همین مطلب خواهیم دید.  

– کاراکتر #  

این کاراکتر صرفا نمایانگر یک عدد یا یک رقم می باشد . با این کاراکتر می توان کنترل نمود که کاربر اولا فقط مجاز به وارد کردن عدد باشد در ثانی کنترل کنیم که عدد وارد شده دارای چند رقم باشد . 

بعنوان مثال اگر از کاربر بخواهید که کد ملی خود را وارد نماید از آنجا که کد ملی فقط حاوی ارقام است و اینکه کد ملی وارده حتما باید ۱۰ رقمی باشد کافی است در قسمت  Validation Text  به تعداد ۱۰ بار این کاراکتر را وارد نمایید

“##########”   Like 

 

– کاراکتر های  []   و  –   

با استفاده از این دو کاراکتر می توانیم محدوده ای از کاراکترها را به عنوان داده های معتبر برای کاربر تعیین کنیم .

بعنوان مثال اگر بخواهیم کاربر فقط از دامنه اعداد بین ۱ تا ۵ استفاده کند به این صورت عمل می کنیم . 

“[۱-۵]”   Like 

 در این حالت کاربر نمی تواند اعدادی بالاتر از ۵ و پایینتر از ۱ را وارد نماید در غیر اینصورت با خطا مواجه می شود .

 

  سایر مثال های کاربردی برای اعتبار سنجی داده ها از نوع متن 

نکته ای که باید در نظر بگیرید این است که معمولا برای ایجاد قواعد اعتبار سنجی باید از ترکیبی از این اپراتورها و عبارات استفاده کرد تا نتیجه نهایی برای ما بدست آید . 

در اینجا مثال های متعددی از نحوه تعیین قوانین اعتبار سنجی با استفاده ترکیب عبارت های شرطی که در بالا در خصوص عملکرد آنها توضیح داده شد آورده می شود که می تواند به عنوان الگویی در  تعیین سایر قواعد و قوانین کاربرد داشته باشد . 

 

–  برای اطمینان از اینکه کاربر فقط بتواند از حروف در یک فیلد استفاده کند .

“*[ا-ی !]*”   Not Like 

– اگر در جدول خود فیلدی دارید که قرار است کاربر آدرس ایمیل خود را در آن وارد کند .

برای اطمینان از اینکه کاربر به درستی این آدرس را وارد می کند می توانید از عبارت زیر استفاده کنید .

 Is Null OR ((Like “*?@?*.?*”) AND (Not Like “*[ ,;]*”))

–  در جدول فیلدی دارید برای دریافت و ذخیره سن کاربر قاعدتا نباید عدد وارد شده در این فیلد منفی باشد پس از عبارت زیر استفاده کنید .

>=0

اما در خصوص قواعد اعتبار سنجی یک نکته مهم را باید در نظر گرفت و آن هم اینکه این قواعد بر روی فیلدهایی با نوع داده های زیر  قابلیت اعمال شدن ندارد .

این داده ها شامل موارد زیر است :

Auto Number

OLE Object

Attachment

Replication ID

این مطلب به مرور در دست تکمیل است . 

validation rule

آموزش اکسس بازدید : 10,277 views 3 سپتامبر, 2018 ۹