مدیریت خطاها در هنگام اجرای فرامین SQL
من بر ای مدیریت خطا یا اکسکپشن ها به همگان استفاده از حلقه try را پیشنهاد می کنم چون واقعا کاربردی و جامع است. نه تنها برای مورد بلکه در موارد دیگر هم پیشنهاد می کنم مثلا تبدیل رشته به عدد اگر نمی دانیم کاربر واقعا عدد وارد کرده و یا کاراکترهای غیر مجاز.
یک مثال: زمانی که می خواهیم به یک آپدیت در جدول داشته باشیم.
try
adoCommand1.commandtext := 'UPDATE tblLog SET LDate = ' + Quotedstr(DateTostr(Now));
adocommand1.Excute;
except
on e: Exception do
begin
showmessage('have a erroe');
Application.Terminate;
end;
end;
نقل قول: مدیریت خطاها در هنگام اجرای فرامین SQL
try
adoCommand1.commandtext := 'UPDATE tblLog SET LDate = ' + Quotedstr(DateTostr(Now));
adocommand1.Excute;
except
on e: Exception do
begin
showmessage('have a erroe' +chr(13)+ e.Message);
Application.Terminate;
end;
end;
نقل قول: مدیریت خطاها در هنگام اجرای فرامین SQL
چطور میشه پیغام ها رو فیلتر کرد؟
مثلا برای برخی پیغام ها یک پیغام و برای برخی دیگر پیغام مخصوص خود.
اگر اینطوری برنامه نویسی بشه برای کلیه error ها یک پیغام نمایش داده می شود.البته درسته که پیغام خطای انگلیسی نمایش داده می شود ولی برای کاربر گویا نیست و کار برنامه نویس در جوابگویی به مشتری را راحت تر می کند.
نقل قول: مدیریت خطاها در هنگام اجرای فرامین SQL
try
...
except
on EZeroDivide do HandleZeroDivide;
on EOverflow do HandleOverflow;
on EMathError do HandleMathError;
end;