PDA

View Full Version : مباحث مربوط به SQL-SERVER



sahar_mo
جمعه 11 شهریور 1384, 09:53 صبح
سلام
چطوری میتونم error های sql را عوض کنم.

bahramsport
جمعه 11 شهریور 1384, 10:29 صبح
من دقیقا سوالتونو متوجه نشدم ولی برلی صفحه errorدر asp.net در web.configاین امکان وجود دارد اونو مطالعه کن

majid_afra222
جمعه 11 شهریور 1384, 18:19 عصر
سلام
جدول sysmessages در بانک اطلاعاتی master شامل همه اعلانهای خطای SQL Server هستش.
هر خطایی رو که خواستی میتونی براحتی تغییر بدی فقط به %ها کاری نداشته باش.

AminSobati
شنبه 12 شهریور 1384, 00:31 صبح
برای ویرایش جداول سیستمی، لازمه که قبلش allow updates رو توسط SP_Configure فعال کنین.
گذشته از این، ویرایش پیغامهای SQL Server و استفاده از اونها برای کاربر، کاری کاملا غیر استاندارد هستش. چرا که Developer باید با استفاده از Error Message، خطای اتفاق افتاده رو تشخیص و به کاربر پیغام مناسب نمایش بده.

majid_afra222
شنبه 12 شهریور 1384, 06:40 صبح
سلام
فکر کنم منظور دوستمون فارسی کردن اعلان خطاهای مورد نظرش باشه، نه تغییر اونها. پس اشکالی نباید داشته باشه.

AminSobati
شنبه 12 شهریور 1384, 22:48 عصر
بله موافقم. اما حالا که این بحث مطرح شد، قصد دارم کمی توضیح در مورد به کار گیریه پیغامهای SQL Server و پیغامهای دلخواه بدم چون معمولا این مطلب مورد شک و سوال بوده:
ویرایش پیغامهای اصلی در جهت ارضاء حس کنجکاوی اشکالی نداره ولی نمایش این پیغام به طور مستقیم به کاربر، غیر استاندارده.
فرض کنین کاربر در یک نرم افزار (مثلا دبیرخانه) یک نامه جدید ارسال میکنه. بواسطه این عمل، در چند جدول عمل Insert ممکنه اتفاق بیافته. اگر یکی از اونها مثلا با یک Constraint مغایرت داشته باشه، پیغام اصلی چیزی شبیه به اینه:


Violation of UNIQUE KEY constraint 'UQ__mail__11606D5A'. Cannot insert duplicate key in object 'mail'.

حالا فرض کنین این پیغام رو ترجمه هم کردیم! کاربر چه استفاده ای از اون خواهد کرد؟ جداول رو نمیشناسه (اصلا شاید ندونه Table یعنی چی) و اطلاعی نداره که ارسال نامه چه فرایندی داره و اشکال از کجاست.
ولی اگر برنامه نویس، به طور صحیح Error Handling انجام داده باشه، بدون توجه به متن خطا، از روی Error Number متوجه مشکل میشه و پیغام مناسب با توجه به محل وقوع خطا، نمایش میده