۲۸ مطلب با کلمهی کلیدی «آموزش SQL Server» ثبت شده است
آموزش Transaction
بسم الله الرحمن الرحیم
آموزش Transaction
مورد فایل LDF قبلا توضیحاتی ارائه گردید همان طور که قبلا ذکر کردیم نام این فایل Transaction DataBase File می باشد و وظیفه آن ذخیره دستورات برای اجرای کامل آنها در صورت ایجاد مشکل می باشد.
برای استفاده هوشمندانه از این ویژگی می بایست به صورت زیر عمل کنیم:
BEGIN TRAN T1
SELECT * FROM Account
COMMIT TRAN T1
BEGIN TRAN T1
این دستور باعث می شود خطوط بعدی در رم ذخیره شود.
COMMIT TRAN T1
باعث می شود کل دستورات در فایل ذخیره می شود.
ادامه مطلب...معرفی فایلهای SQL
بسم الله الرحمن الرحیم
آموزش SQL Server
هر بانک اطلاعاتی از سه فایل تشکیل می شود:
(Master DataBase File) MDF: فایل اصلی SQL می باشد که تمامی جداول، رکوردها، توابع برنامه نویسی را ذخیره می کند. تمامی فایلها در SQL به قطعه های مساوی 8K تقسیم می شوند که به آنها DataPage گفته می شود هر DataPage تنها اطلاعات یک جدول را نگه داری می کند در صورت ایجاد جدول جدید اطلاعات در اولین DataPage خالی ثبت می شود. در صورتی که DataPage خالی دیگر موجود نباشد از تکنیک File Growth استفاده می شود.
(Transaction DataBase File) LDF: تمامی عملیات هایی که سبب تغییر در پایگاه داده می شود در این فایل ذخیره می شود مثلا Bacth Command ها (به دستوراتی که با هم اجرا می شوند. در واقع در SQL دستورات ابتدا در فایل ذخیره می شود تا در صورتShutDown یا Crash کردن سرور اطلاعات را پس از راه اندازی بازیابی کند و دستورات به اتمام نرسیده را بازیابی کرده و پایگاه داده را به حالت اولیه بر می گرداند.
ادامه مطلب...آموزش Cursor در SQL Sever
بسم الله الرحمن الرحیم
آموزش Cursor در SQL Sever
در بسیاری مواقع شما نیاز دارید اطلاعات را به صورت رکورد به رکورد بررسی کنید، اولین راه حل ایجاد یک برنامه است اما اگر بخواهیم این کار را در SQL انجام دهیم چطور؟ همانطور که مشخص است دستور SELECT این کار را برای ما انجام می دهد با این تفاوت که نمی توانیم تک تک رکوردها را بررسی کنیم بلکه خروجی دستور SELECT یک ResualtSet یا در واقع یک Dataset است.
دستور Cursor می تواند خروجی دستور SELECT را در حافظه نگه دارد و تک تک آنها را بررسی کند.
مثال
@id uniqueidentifier,
@userName varchar(20),
@password varchar(20)
DECLARE AccountRows CURSOR FOR SELECT id,userName,password FROM Account
AccountRows متغییری از جنس CURSOR تعریف کردیم تا اطلاعات را در خود ذخیره کند.
ادامه مطلب...آموزش MaintenancePlan
بسم الله الرحمن الرحیم
آموزش MaintenancePlan در SQL Server
در این بخش قصد دارم بخشی را با عنوان Maintenance plan که یکی از قابلیت های SQL server می باشد معرفی کنم. شما با استفاده از این قابلیت می توانید یک برنامه یا همان plan را تعرفی نمایید و سپس می توانید این plan را در بازه های زمانی مشخص اجرا نمایید و به عنوان یک Job درSQL معرفی نمایید.
سعی می کنم با یک مثال ساده این قضیه را روشن تر کنم. برای این کار من قصد دارم یک plan برای گرفتن بک آپ به صورت روزانه از تمامی دیتابیس ها ایجاد کنم.
در بخش Maintenance plan کلیک راست کنید و بر روی گزینه New Maintenance plan کلیک نمایید و در پنجره باز شده یک نام انتخاب کنید.
در بالای پنجره Maintenance plan بر روی گزینه Subplan Schedule کلیک نمایید و در پنجره باز شده پارامترهای اجرا برنامه و زمان بندی را مطابق انچه نیاز دارید تنظیم نمایید در این جا ما می خواهیم برنامه ما هر روز در یک ساعت مشخص و بدون محدودیت برای همیشه اجرا شود حال پنجره را Ok کنید.
ادامه مطلب...
پیکربندی Database Mail وارسال ایمیل از طریق Database Mail
بسم الله الرحمن الرحیم
آموزش DataBase Mail
پیکربندی Database Mail وارسال ایمیل از طریق Database Mail
در این مقاله قصد داریم یک Database Mail راه اندازی کنیم و بهتر است دوستانی که باDatabase Mail آشنایی ندارند ابتدا معرفی و تفاوت آن را با SQLMail که قبلا در مورد آن مطلبی را قرار داده ام بررسی کنند.
برای شروع کار ابتدا باید Database Mail را پیکر بندی کنیم، در این مرحله ابتدا یک profile ایجاد می کنیم
ابتدا SSMS (اسکیوال سرور) را باز می کنیم در بخش سمت چپ Object Explorer بر روی Management کلیک می کنیم و از گزینه های زیر مجموعه آن بر روی Database Mail کلیک راست می کنیم و گزینه Configuration Database Mail را انتخاب می کنیم
ادامه مطلب...تفاوت بین SQLMAIL و Database Mail
بسم الله الرحمن الرحیم
این مبحث را برای دوستان تیم طراحی پایگاه داده قرار دادم انشالله مفید واقع شود
تا کنون کسی را ندیده ام که اولا تفاوت این دو را بداند (در بحث های انجام شده در تمامی سایت هایی که بررسی کرده ام؛ هیچ بحثی در این مورد وجود ندارد!) و دوما هیچ کس از این روش برای ارسال ایمیل استفاده نمی کند مجددا در هیچ مطلب فارسی این مبحث مطرح نشده است به همین دلیل این مطلب را قرار داده تا شاید دوستان خارج از مجموعه با مباحث این چنینی بیشتر آشنا شوند
Database mail یک مفهوم جدید است که در SQL Server 2005 مطرح شد و جایگزین SQLMail در نسخه های قبل تر Sql گردید
Database Mail چندین مزیت و پیشرفت بر SQLMail دارد. Database Mail بر اساس SMTP (Simple Mail Transfer Protocol) و همچنین خیلی سریعتر و قابل اعتماد تر از SQLMail است و SQLMail بر اساس MAPI (Messaging Application Programming Interface) است.
ادامه مطلب...بهینه سازی کوئری
بسم الله الرحمن الرحیم
بخش های ابتدایی این مقاله مباحث تئوری خواهد بود، باتوجه به پیشنهاد دوستان یک مثال کامل به همراه مطالب تئوری لازم را در این مثال بیان نموده ایم که می توانید از آن نیز استفاده کنید.
برای دوستان عزیز که در تیم طراحی پایگاه داده SQL فعالیت می کنند مطلبی را آماده کردم که انشالله مفید واقع شود.
برای اینکه بفهمید چطور می توانید یک کد اسکیوال با کارایی مناسب بنویسید نیاز است که درک کنید که کدهای بهینه چطور کار می کنند.
بهینه ساز های کوئری اسکیوال بهینه سازی را بر مبنای هزینه انجام می دهند.
این آنالیز ها یکی از روش های اجرایی انتخاب شده است برای کوئری مشخص، تخمین زدن هزینه هر کدام از این روش ها و انتخاب روشی که کمترین هزینه در بین گزینه های مورد نظر را داشته باشد
درواقع با توجه به اینکه بهینه ساز کوئری نمی تواند هر طرح ممکن را برای هر کوئری در نظر گیرد
این عملا انجام یک فعالیت متعادل بر پایه ی هزینه است که درنظر گرفتن دو هزینه یکی هزینه یافتن روش بالقوه و دیگری هزینه خود روش.
ادامه مطلب...حذف کانکشن های یک دیتابیس
بسم الله الرحمن الرحیم
برای دوستان عزیز که در تیم طراحی پایگاه داده SQL فعالیت می کنند این کد بسیار کارا خواهد بود.
برای اینکه شما بتوانید یک پایگاه داده را Restore کنید می بایست ابتدا تمامی Connection های آن را حذف کنید برای این فرایند کافی است که دستور زیر را بر روی پایگاه داده خود اجرا نمایید (بجای MyDATABASE نام پایگاه داده خود را وارد نمایید). البته این مشکل مربوط به نسخه های قدیمی SQL می باشد.
اما به هر حال بسیاری از مواقع شما نیاز دارید تمامی Connnection های فعال اسکیوال سرور را حذف کنید. برای این کار کافی است تکه کد زیر را بروی دیتابیس مورد نظر خود اجرا کنید.
ادامه مطلب...