در SQL Server مانند دات نت خطاها را با شرح نمایش نمی دهد، فقط شماره خطا و خط آن را نمایش می دهد، چگونه می توان به شرح خطا دست یافت؟
متشکرم
در SQL Server مانند دات نت خطاها را با شرح نمایش نمی دهد، فقط شماره خطا و خط آن را نمایش می دهد، چگونه می توان به شرح خطا دست یافت؟
متشکرم
دوست عزیزم از نسخه 2005 به بعد میتونین از توابع متنوعی استفاده کنین:
ERROR_LINE
ERROR_MESSAGE
ERROR_NUMBER
و ...
AminSobati جان چطور باید بدونیم که کدوم خطا برای چی هست. منظورم توضیحاتشه.ایا ادرس سایتی رو دارید که توضیحاتش توش باشه.
سلام.
ببینید. کلیه پیامها در جدول messages نگهداری میشه:
اونجا میتونید بر اساس message_id و severity به توضیح اون پیام برسید! اما چیزی که Aminsobati گفتن به نظر میرسه مشکل شما رو حل کنه. اگر در BOL نگاه کنید، میبینید:
SELECT * FROM sys.messages
USE AdventureWorks;که نحوه استفاده از توابعی که AminSobati ذکر کردن رو نشون داده!
GO
BEGIN TRY
-- Generate a divide-by-zero error.
SELECT 1/0;
END TRY
BEGIN CATCH
SELECT
ERROR_NUMBER() AS ErrorNumber,
ERROR_SEVERITY() AS ErrorSeverity,
ERROR_STATE() AS ErrorState,
ERROR_PROCEDURE() AS ErrorProcedure,
ERROR_LINE() AS ErrorLine,
ERROR_MESSAGE() AS ErrorMessage;
END CATCH;
GO
با تشکر از شما.
من منظورم توضیح مربوط به هر خطا هست .مثلا گفته باشه خطای شماره 1 برای استارت نبودن اسکیوال هست یا هر چیز دیگه که وجود داره.
ایا ادرسی دارید که با این خطاها اشنا بشیم
سلام داداش گلم این دستور رو اجرا کردم اما خطا گرفت . اسکیوال من 2000 هست ممکنه مشکل از اون بالشه
USE msdb
SELECT * FROM sys.messages
سلام.
در SQL Server 2000 اندکی متفاوته:
SELECT * FROM master.dbo.sysmessages
ضمنا، لیست خطاها رو میتونید در این سایت پیدا کنید. اونجا همه خطاها (با شماره اشون) لیست شده.
یک پیغام خطا ممکنه دلایل مختلف داشته باشه. میتونین از Google استفاده کنین!
ممنون از لطفتون داداشی