واضح آرشیو وب فارسی:سایت ریسک: samaram19-01-2010, 10:47 PMبه عنوان مثال تو یکی از جداول بانکم یه فیلد به نام Takhfif دارم. میخوام اول در یک دستور select اون سطر مورد نظرم رو پیدا کنم و بعد بگم اگه مقدار فیلد takhfif در این سطر 10 هست فلان دستور رو اجرا کن. میشه برام یه قطعه کد بنویسید؟ یه سوال دیگه هم دارم. اونم اینه که در دستور delete با این خطا مواجه میشم: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! کدهامم به این شکله: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! bad_boy_200726-01-2010, 12:55 AMسلام دوست من ، شما که اینقدر قشنگ با پارامتر ها کار میکنید چرا کدهایتان را StoredProcedure نمیکنید ؟ هم سریع تر است و هم تمیز تر ، بگذریم SQL Query : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! در ضمن یک توصیه ، تمام توابع کار با داده ها را در کلاسهای موبط قرار بده (مثلا کلاس مشتری ، فروش ، خرید و ...) و بهیچ عنوان در این توابع سوالاتی نظیر "مایل به حذف مشتری .... هستید" ، "مشتری اضافه شد" و... را قرار ندهید ، این کد ها را در فرم برنامه تان قرار دهید samaram29-01-2010, 07:59 PMسلام دوست من ، شما که اینقدر قشنگ با پارامتر ها کار میکنید چرا کدهایتان را StoredProcedure نمیکنید ؟ هم سریع تر است و هم تمیز تر ، بگذریم SQL Query : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! در ضمن یک توصیه ، تمام توابع کار با داده ها را در کلاسهای موبط قرار بده (مثلا کلاس مشتری ، فروش ، خرید و ...) و بهیچ عنوان در این توابع سوالاتی نظیر "مایل به حذف مشتری .... هستید" ، "مشتری اضافه شد" و... را قرار ندهید ، این کد ها را در فرم برنامه تان قرار دهید مشخصه که شما برنامه نویس حاذقی هستید که اینطور ساختیافته می نویسید. ولی متاسفانه من هنوز تازه کارم و همین کدهایی که به عنوان راهنمایی برام نوشتید رو نفهمیدم!! این یعنی چی؟ Declare @Discount decimal bad_boy_200729-01-2010, 11:50 PMتوصه میکنم یک کتاب آموزش SQL گیر بیاورید و 2 فصل آن را بخوانید : 1- Stored Procedure ها 2- بخشی که در رابطه با متغییر ها و شیوه کار کردن با آن توضیح داده بصورت خلاصه : برای تعریف متغییر در SQL از دستور Declare استفاده میشود این متغییر (که به آن متغییر محلی نیز گفته میشود) الزاما باید با @ شروع شود . دستور زیر متغییری از نوع Decimal تعریف میکند : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! برای مقدار دهی متغییر ها از دستور Set یا Select استفاده میشود ، به عنوان مثال هر دو دستور زیر مقدار 2 را در متغییر @A میریزند : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! دستورات شرطی در SQL مشابه با VB و Delphi هست مثلا اگر بخوایم مقدار @A را بررسی کنیم و با توجه با مقادی متفاوت آن عکس العمل های متفاوتی از خود نشان دهیم : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! [دستور Print برای چاپ یک مقدار در خروجی استفاده میشود] و اما یک نمونه کامل برای کار با متغییر ها و بررسی شرطها که در SQL قابل اجراست : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! اگر در اجرای کد های فوق در SQL Server Managment Studio مشکلی نداشتید بکویید تا طریقه تبدیل این کدها به Stored Procedure و استفاده از آن در برنامه را بگویم . samaram30-01-2010, 07:58 PMخیلی خیلی خیلی ممنون. آره این کدها رو در یکی کوئری اجرا کردم. بقیه اشو بگید آقا معلم. bad_boy_200731-01-2010, 07:14 PMپروسیجر های ذخیره شده (Stored Procedure) قطعه کدهایی هستند که عموما به دو دلیل استفاده میشوند : جهت افزایش سرعت اجرا جهت کاهش ترافیک شبکه و افزایش خوانایی جهت ایجاد یک پروسیجر ذخیره شده ، در بخش Program Ability (دو - سه تا گزینه زیر گره Table در ManagmentStudio) بر روی گره StoredProcedure راست کلیک کنید و کزینه New Stored Procedure ... را انتخاب نمایید ، کدی مشابه ذیل دیده میشود : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! همانگونه که در متن کد دیده میشود با فشردن کلیدهای CTR + Shift +M میتوان پارامترهای پیش فرض را برای ایجاد آن مقدار دهی کرد . هر پروسیجر ذخیره شده میتواند تعدادی پارامتر (0 یا بیشتر) داشته باشد که این پارامتر ها دقیقا در خط بعد از !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! و پیش از AS قرار میگیرند . نمونا ای از یک پروسیجر ذخیره شده بدون پارامتر که فقط عبارتی را در صفحه چاپ میکند : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! جهت اجرای این پروسیجر میتوان از دستور ذیل استفاده کرد : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! و اما اگر بخواهید پارامتر به استورد پروسیجر پاس دهید مشابه ذیل : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! و اما برای اجرا : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! ... سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 348]