آموزشگاه برنامه نویسی تحلیل داده
آموزشگاه برنامه نویسی تحلیل داده

کار با post / pre deployment script

کار با post / pre deployment script (اسکریپت های اجرای عملیات قبل و بعد از نصب)

گاهی لازم است به هنگام ایجاد و بروز رسانی پایگاه داده، داده هایی را به آن اضافه کرده، داده های جاری را ویرایش یا آن ها را حذف کنید. علاوه بر آن، ممکن است لازم باشد عملیات خاصی قبل و/یا بعد از اتمام فرایند مورد نظر بر روی پایگاه داده انجام شود. برای مدیریت چنین سناریویی کافی است از deployment script استفاده نمایید.


شرح

در مبحث قبلی، داخل پروژه ی پایگاه داده ی خود، یک جدول جدید تعریف کردیم. حال به راهی نیاز داریم که به وسیله ی آن بتوان داده های اولیه (seed data) را وارد جدول مورد نظر کنیم. برای انجام این کار لازم است اسکریپت Script.PostDeployment.sql را بروز رسانی نماییم.
داخل پنجره ی Solution Explorer، دوبار بر روی این فایل کلیک کرده و سپس آن را مانند زیر ویرایش می کنیم:


آموزش sql

به منطق شرطی در کد فوق دقت کنید. اسکریپت ها یا دستورات Pre/Post deployment همیشه فارغ از نوع عملیات (نصب یا بروز رسانی/اینکه پایگاه داده را نصب می کنید یا آن را ارتقا می دهید) اجرا می شوند. توصیه می شود اسکریپت ها خود را قابل تکرار و اجرا مجدد (idempotent) تعریف نمایید تا بدین وسیله از شکست خوردن فرایند بازطراحی (refactor) پایگاه داده جلوگیری شود (idempotent= به ويژگی خنثی بودن تکرار يک رابطه (يا تابع يا عمليات) گفته می شود؛ بدین معنی که تکرار، در خروجی یا محتوای اطلاعات تغییری ایجاد نکند).
زمانی که فرایند deployment پایگاه داده اجرا می شود (پایگاه داده بر روی سرور نصب، مستقر و آماده ی استفاده می شود)، 3 قطعه یا بلوک کد داخل اسکریپت .sql که خود توسط Visual Studio ساخته شده، ایجاد می گردد. این اسکریپت نهایی که به صورت خودکار ایجاد شده، در واقع کدی است که نهایتا بر روی پایگاه داده deploy می شود. اسکریپت مزبور از سه بلوک اصلی کد تشکیل شده که در زیر ترتیب ایجاد آن ها را شرح می دهیم:


  • تمامی کدهایی که فایل Scripts.PreDeployment.sql تشکیل می دهد.
  • کدهای خودکار ایجاد شده که نمایانگر عملیات create/drop/(change) ویرایش database schema بر اساس محتوای پروژه هستند (کدهایی که به صورت خودکار ایجاد شده و بر اساس محتوای پروژه، schema ی پایگاه داده را ایجاد/حذف/ویرایش می کنند).
  • تمام کدهایی که محتوای فایل Scripts.PostDeployment.sql را تشکیل می دهد.

البته بسته به تنظیمات نصب و deployment option هایی (همچون constraint checking) که تعیین شده، ممکن است visual studio کدهای دیگری نیز به script اصلی اضافه کند.
شما می توانید اسکریپت های مجزا داخل Solution Explorer، در زیر پوشه های Pre Deployment و Post Deployment ایجاد نمایید و سپس آن ها را به وسیله ی دستور :r از SQLCMD، به صورت مسقیم در اسکریپت Script.PostDeployment.sql اضافه نمایید. این امر به شما اجازه می دهد کارها و عملیات خاصی را به اسکریپت معینی محول کرده و بجای ایجاد و نگهداری یک اسکریپت بزرگ و واحد که وظیفه ی انجام تمامی عملیات را بر عهده دارد، برای هر عملیات اسکریپت خاصی داشته باشید.
می توان متغیرهای SQLCMD را داخل فایل Database.sqlcmdvars در پنجره ی solution explorer ایجاد کرد.
اکنون ممکن است این سوال برای شما مطرح شود که یک pre deployment script اساسا کجا کاربرد دارد و چگونه می تواند مفید باشد. یکی از موارد کاربرد آن در migration های پیچیده و انتقال داده ها است. با بهره گیری از اسکریپت های اجرای عملیات قبل و بعد از نصب پایگاه داده (pre / post deployment scripts) می توانید پیش از مستقر کردن پایگاه داده بر روی سرور (deployment)، کارهای خاصی را انجام داده (داده هایی را اضافه کرده) و سپس بعد از اجرای deployment، بر روی اطلاعات مورد نظر عملیات معینی را انجام دهید.


  • 966
  •    600
  • تاریخ ارسال :   1394/07/27

دانلود PDF دانشجویان گرامی اگر این مطلب برای شما مفید بود لطفا ما را در GooglePlus محبوب کنید
رمز عبور: tahlildadeh.com یا www.tahlildadeh.com
ارسال دیدگاه نظرات کاربران
شماره موبایل دیدگاه
عنوان پست الکترونیک

ارسال

آموزشگاه برنامه نویسی تحلیل داده
آموزشگاه برنامه نویسی تحلیل داده

تمامی حقوق این سایت متعلق به آموزشگاه تحلیل داده می باشد .