۱۳۸۷/۱۲/۱۱

تعيين اعتبار كردن يك عبارت SQL


سؤال: چگونه مي‌توان يك كوئري را تعيين اعتبار كرد بدون اينكه نتيجه‌ي اجراي آن براي ما اهميتي داشته باشد يا ديتابيس را به هم بريزد؟

روش انجام اين‌كار در اس كيوال سرور به صورت زير است:

SET NOEXEC ON
GO
عبارات اس كيوال ما در اينجا قرار خواهند گرفت
GO
SET NOEXEC OFF
GO
مطابق راهنماي اس كيوال سرور، SET NOEXEC سبب كامپايل كوئري‌هاي پس از آن شده ولي آن‌ها‌را اجرا نخواهد كرد. همچنين SET PARSEONLY ON فقط syntax يك كوئري را بررسي كرده و خطاهاي حاصل را نمايش مي‌دهد (بدون اجرا كوئري، بدون كامپايل آن).