Loading…

جزیره بانک های اطلاعاتی

  • مرتب سازی بر اساس
  • تعداد نمایش در هر صفحه
حسین احمدی
نکته: بدست آوردن مقادیر یک ستون از رکورد قبلی یا بعدی بوسیله توابع LAG و LEAD در SQL Server
بدست آوردن مقادیر یک ستون از رکورد قبلی یا بعدی بوسیله توابع LAG و LEAD در SQL Server یکی از مشکلاتی که اکثر دوستان در زمان نوشتن کوئری ها با آن برخورد می کنند استفاده از مقادیر یک ستون در سطر قبلی یا سطر بعدی رکورد جاری است. یکی از روش های حل این مشکل استفاده از Cursor ها است. از نسخه 2012 در SQL Server توابعی اضافه شدند به نام های LAG و LEAD که جزو توابع Analytical محسوب می شوند. بوسیله این توابع می توان مقادیر یک ستون از سطر قبلی یا بعدی رکورد جاری را بدست آورد. برای آشنایی بیشت...
Alighalehban
نکته: دستورات لینوکس برای backup و restore بانک های اطلاعاتی mysql
 دستورات لینوکس برای backup و restore بانک های اطلاعاتی mysql دستوراتی که در این آموزش قصد دارم به شما معرفی کنم به مدیران بانک های اطلاعاتی مای اسکیول کمک خواهد کرد تا از بانک های اطلاعاتی بک آپ گیری و یا بک آپ مدنظر را ریستور نمایند این آموزش در حول محور سه دستور اصلی mysql و mysqldump وmysqlimport خواهد بود البته در این اموزش ما فرض را بر این میزارم که از قبل مای اسکیول بر روی سیستم نصب و در حال استفاده میباشد نحوه بک آپ گیری از بانک اطلاعاتی قبل...
حسین احمدی
نکته: باز کردن فایل های XML در SQL Server بوسیله OPENROWSET
باز کردن فایل های XML در SQL Server بوسیله OPENROWSET یکی از قابلیت های SQL Server کار کردن با مستندات XML هست، یعنی شما می توانید خروجی کوئری ها را تبدیل به مستندات XML کرده یا یک فایل XML را خوانده و محتویات آن را پردازش کنید. در این نکته قصد داریم تا با نحوه باز کردن یک فایل XML و پردازش آن آشنا شویم. فرض کنید که فایل XML شما با نام data.xml و در درایو D ذخیره شده و شامل محتویات زیر است: جهت باز کردن این فایل شما باید ابتدا یک متغیر از نوع xm...
حسین احمدی
نکته: آشنایی با عبارت WAITFOR در SQL Server
آشنایی با عبارت WAITFOR در SQL Server اگر قبلاً با سرویس Agent در SQL Server کار کرده باشید می دانید که این سرویس برای اجرای کارهای زمانبندی شده استفاده می شود. برای مثال، شما می خواهید عملیات تهیه پشتیبان را در یک زمان مشخص انجام بدهید یا عملیات Maintenance را بر روی بانک اطلاعاتی خود انجام دهید. در SQL Server امکان ایجاد زمان بندی یا ایجاد تاخیر در بین دستورات یک script بوسیله عبارت WAITFOR وجود دارد. WAITFOR به دو صورت قابل استفاده...
حسین احمدی
نکته: تهیه پشتیبان از بانک های SQL Server در محیط شبکه
تهیه پشتیبان از بانک های SQL Server در محیط شبکه تهیه پشتیبان از بانک های اطلاعاتی یکی از کارهای بسیار مهم در سازمان ها است که باعث می شود در صورت بروز مشکل در بانک های اطلاعاتی بتوان از نسخه های پشتیبان موجود اطلاعات را بازیابی کرد. تهیه پشتیبان بر روی سیستم های Local کار مشکلی نیست. اما اگر بخواهیم در یکی از پوشه های Share شده در محیط شبکه عملیات پشتیبان گیری را انجام دهیم کمی موضوع تفاوت دارد. در این مطلب قصد داریم تا نحوه تهیه پشتیبان در محی...
حسین احمدی
نکته: تفاوت Local Temporary Tables و Global Temporary Tables
تفاوت Local Temporary Tables و Global Temporary Tables در SQL Server جدولی را می توان ایجاد کرد که به Database های ایجاد شما توسط شما تعلق ندارند و در بانک tempdb که جزو Database های سیستمی SQL Server هست ایجاد می شود و به آن ها Temporary Table گفته می شود. شما امکان ایجاد دو مدل Temporary Table را دارید: 1. Local Temporary Tables: این نوع از جداول موقت تنها در طول برقراری Connection ای موجود است که temp table در آن ایجاد شده و زمانی که Connection ...
حسین احمدی
نکته: تفاوت میان UNION و UNION ALL در SQL Server
تفاوت میان UNION و UNION ALL در SQL Server زمانی که شما قصد دارید در SQL Server نتایج کوئری دو جدول را با همدیگر ادغام کنید از عبارت UNION استفاده می کنید، عبارت UNION کاری که می کند نتایج دو کوئری را گرفته و تحت یک خروجی به شما نمایش می دهد، موضوع مهم در UNION این است که ستون ها و نوع های ستون های خروجی دو کوئری می بایست با یکدیگر یکسان باشند: اما UNION در این بین یک کار اضافی برای شما انجام می دهد، فرض کنید دو رکورد یکسان در دو جدول...
حسین احمدی
نکته: آشنایی با کاربرد NOLOCK و READPAST در SQL Server
آشنایی با کاربرد NOLOCK و READPAST در SQL Server زمانی که شما در کوئری های SQL Server اقدام به خواندن یا تغییر اطلاعات می کنید، SQL Server از یک مکانیزم کنترلی به نام Lock استفاده می کند تا از صحت داده ها در بانک اطلاعاتی و خروجی نمایش داده شده اطمینان حاصل کند. در حقیقت کار Lock اطمینان از این است که رکورد های درگیر در یک Transaction نمی توانند توسط یک transaction دیگر تغییر کنند تا زمانی که در transaction اول عملیات commit انجام شود. اما ممک...
حسین احمدی
نکته: تابع EOMONTH در SQL Server و بدست آوردن تاریخ آخرین روز ماه
تابع EOMONTH در SQL Server و بدست آوردن تاریخ آخرین روز ماه در SQL Server توابع زیادی برای کار بر روی رشته ها، اعداد و تاریخ وجود دارد. یکی از توابع کاربردی کار با تاریخ تابخ EOMONTH می باشد که مخفف End Of Month است. بوسیله این تاریخ می توان تاریخ آخرین روز ماه تاریخ جاری یا تاریخی که به عنوان ورودی به آن داده می شود را بدست آورد. ساختار کلی این تابع به صورت زیر است: برای مثال، فرض کنید می خواهیم تاریخ آخرین روز ماه جاری سیستم را بدست آوریم، از این تا...
حسین احمدی
نکته: دستور DBCC CHECKIDENT در SQL Server
دستور DBCC CHECKIDENT در SQL Server سلام به تمامی دوستان عزیز در وب سایت ITPRO، اکثر جداولی که در بانک های اطلاعاتی تعریف می شوند شامل یک کلید اولیه هستند که این کلید اولیه معمولاً از نوع Identity تعریف می شود، مقدار فیلدهای Identity به صورت خودکار و با هر بار درج رکورد جدید در جدول درج شده و مقدار آن ها نیز بر اساس تنظیمات Identity Seed با توجه به آخرین رکورد اضافه می شوند. فرض کنیم که جدولی داریم که فیلدی از نوع Identity دارد و تص...
mostafa lor
نکته: تلفظ درست نام پایگاه های داده
تلفظ درست نام پایگاه های داده نکته ای مهم: در باب تلفظ نام پایگاه های داده (SQL SERVER) ، (MYSQL) ، خود کلمه SQL به تنهایی و یا زمانی که در جمله ای ، از کلمه SQL استفاده شده باشد مانند: SQL STRUCTURE ، SQL QUERY و... یا هر جمله دیگری که از کلمه SQL در آن استفاده شده باشد حتما نیاز است که تلفظ کلمه SQL را به این صورت (سه کو اِل) و نه (اِس کیو اِل) تلفظ کنیم، یعنی به طور مثال (SQL SERVER) را (سه کو اِل سرور) تلفظ کنیم. این تلفظ،...
اميررضا کشاورز
نکته: منظور از Null Data در SQL چیست ؟
منظور از Null Data در SQL چیست ؟ هنگام واردکردن اطلاعات یک جدول گاهی برخی از داده های یک سطر در دسترس نیست به همین منظور به صورت پیش فرض ستون های یک جدول می توانند مقادیر Null بگیرند. توجه داشته باشید که : * Null یک نگهدارنده برای ارزش های ناشناخته (unknown ) و یا غیر قابل اجرا است. به عبارتی Null مقدار نمی باشد. * Null ها همیشه false در نظر گرفته می شوند، بنابراین درمحاسبات حتماً باید به آنها توجه شود تا پاسخ نهایی، پاسخی ...
navidrad
نکته: خطا در هنگام انتقال دیتابیس اوراکل از Windows به Linux
برای انتقال دیتابیس اوراکل از محیط ویندوز به لینوکس ممکن است به خطاهای مختلفی برخورد کنید. اکثر این خطاها در اینترنت قابل جستجو هستند. ولی خودم چند روز پیش به خطایی برخورد کردم که هر چی جستجو کردم نتونستم مطلبی در موردش پیدا کنم. در نهایت با سعی و خطا تونستم مشکل رو حل کنم. اگر در حین انجام این کار به خطای زیر برخورد کردین: از اسکریپت زیر استفاده کنید: مشکل شما حل خواهد شد. نوید راد - 19 م...
حسین احمدی
نکته: جداول موقت (Temporary Tables) در SQL Server
جداول موقت (Temporary Tables) در SQL Server یکی از قابلیت های SQL Server این است که شما می توانید بدون ساخت Database، جداولی را ایجاد کرده و با آن ها کار کنید. به این جداول اصطلاحاً جداول موقت یا Temporary Tables می گویند. برای ایجاد جداول موقت کافیست به صورت زیر یک جدول موقت ایجاد کنید: دقت کنید که برای ساخت جداول موقت نیازی به ساخت Database نیست، کافیست در ابتدای نام جدول علامت # قرار دهید. حال، به راحتی می توان به صورت زیر در این جد...
حسین احمدی
نکته: آشنایی با عبارت OUTPUT در SQL Server
آشنایی با عبارت OUTPUT در SQL Server عبارت OUTPUT در SQL Server به ما این امکان را می دهد تا اطلاعاتی در مورد رکورد هایی که توسط دستورات INSERT و UPDATE و DELETE تغییر داده می شوند کسب کنیم. برای مثال، جدولی را با مشخصات زیر در نظر بگیرید: همانطور که مشاهده می کنید جدول Customers شامل یک ستون از نوع int است که identity می باشد. یعنی با درج رکورد به صورت خودکار مقدار به آن تعلق می گیرد. حال مقداری را در این جدول درج می کنیم: ...
حسین احمدی
نکته: کوئری های پرکاربرد در SQL Server :: قسمت چهارم
کوئری های پرکاربرد در SQL Server :: قسمت چهارم -- 21. بدست آوردن Session Id برای پراسس کاربر جاری -- -- 22. بدست آوردن فضای آزاد درایوها -- -- 23. غیرفعال کردن یک trigger -- به جای TriggerName، نام trigger و به جای TableName نام جدول مورد نظر را بنویسید. -- 24. فعال کردن یک trigger -- به جای TriggerName، نام trigger و به جای TableName نام جدول مورد نظر را بنویسید. -- 25. فعال کردن همه trigger های مربوط به یک جدول...
حسین احمدی
نکته: کوئری های پرکاربرد در SQL Server :: قسمت سوم
کوئری های پرکاربرد در SQL Server :: قسمت سوم -- کوئری 11: RESEED کردن فیلدهای Identity در کلیه جداول بانک اطلاعاتی -- بوسیله این کوئری می توانید فیلدهای Identity را در کلیه جداول RESEED کنید، یعنی عدد شروع را برای فیلدهای Identity مشخص کنید: -- کوئری 12: بدست آوردن لیست کلیه جداول به همراه تعداد رکوردها -- بوسیله این کوئری می توانید لیست کلیه جداول یک بانک اطلاعاتی را به همراه تعداد رکوردهای هر جدول بدست آورید: -- کوئری 1...
حسین احمدی
نکته: کوئری های پرکاربرد در SQL Server :: قسمت دوم
کوئری های پرکاربرد در SQL Server :: قسمت دوم -- کوئری 6: دریافت لیست Object های استفاده شده در یک Stored Procedure -- بوسیله این کوئری می توانید لیستی از Object های استفاده شده در یک Stored Procedure مانند جداول، توابع یا Stored Procedure های دیگر را بدست آورید: کافیست به جای SP_Name جان Stored Procedure مورد نظر را بنویسید. -- کوئری 7: بدست آوردن تعداد Byte های مربوط به جداول -- بوسیله این کوئری می تواند تعداد Byte های اشغال...
حسین احمدی
نکته: کوئری های کاربردی در SQL Server - بخش اول
کوئری های کاربردی در SQL Server - بخش اول در این مقاله قصد داریم تا با برخی از کوئری های تعریف شده در SQL Server که بعضاً بسیار مهم و پرکاربردی هستند آشنا شویم. به نظر من هر برنامه نویس و یا مدیر بانک اطلاعاتی باید با این کوئری ها آشنایی داشته باشد. این کوئری ها به شما کمک می کنند تا مشکلات خود را که از مسائل خیلی ساده تا مسائل پیچیده را شامل می شوند حل کنید. پس در این مطلب همراه من باشید. -- کوئری 1: دریافت لیست کلیه بانک های اطلاعا...
حسین احمدی
نکته: روش های Pagination در SQL Server
دوستان عزیزی که کار برنامه نویسی، چه تحت وب و چه تحت ویندوز را انجام می دهند، به طور حتم با مفهوم صفحه بندی اطلاعات آشنایی دارند. فرض کنید جدولی دارید با نام Orders که حدود 10000 رکورد در آن ثبت شده است. حال شما می بایست اطلاعات این جدول را در خروجی نمایش دهید. اما آیا هر 10 هزار رکورد را به صورت یکجا در خروجی می بایست نمایش داد؟ به طور حتم اینگونه نیست و باید از مکانیز صفحه بندی یا Pagination است...
حسین احمدی
نکته: آشنایی با تابع HASHBYTES در SQL Server برای HASH کردن اطلاعات
شما به عنوان یک برنامه نویس و یا مدیر بانک اطلاعاتی وظیفه دارید تا اطلاعات مهم ذخیره شده در جداول بانک های اطلاعاتی را رمز نگاری کنید. حال این رمزنگاری می تواند Encrypt کردن اطلاعات باشد که قابل بازگشت است و یا Hash کردن باشد که غیر قابل بازگشت است. در این نکته می خواهم شما را با تابعی در SQL Server آشنا کنم که امکان Hash کردن اطلاعات را به شما می دهد. این قابلیت به خصوص زمان ذخیره کردن اطلاعات مر...
fotros
نکته: Recovery پایگاه داده به کمک Tail Log
معمولا هنگامی که پایگاه داده ایی آسیب دیده است نیاز است که فایل Backup آن بازگردانی شود. اما آیا Full Backup و Log Backup می تواند پایگاه داده را کامل Recover کند ؟ Tail Log شامل Transaction Log است که بعد از Log Backup ایجاد شده است. در صورتی که نیاز به Recovery پایگاه داده تا آخرین نقطه قبل از Disaster باشد نیاز به Tail Backup است تا تمامی Transaction Log ها برگردانده شود. هنگامی که دیتافایل ه...
HamidJFard
نکته: مستلزمات برای طراحی Index در SQL Server
در این مطلب می خواهم به مستلزمات یک طراحی عالی برای ایندکس ها در محیط SQL Server به پردازم. Index چیست؟ -- یک نوع شیء در پایگاه داده است که تاثیر مستقیم بر روی روند عملیات فیزیکی و منطقی خواندن و نوشتن داده ها دارد که در آخر تاثیری بر روی بازدهی Query مورد نظر می شود. دو نوع Index در محیط SQL Server وجود دارد. نوع اول Clustered و نوع دوم Non-Clustered. نوع اول ساختار جدول مورد نظر را به طور ...
HamidJFard
نکته: محدودیتهای بازدهی و راه حل آنها در SQL Server
بازدهی SQL Server بسیار زیاد متکی به منابع سخت افزاری است اگر محدودیتی وجود داشته باشد این محدودیت تاثیر بسزایی روی بازدهی SQL Server خواهد داشت. محدودیتها می توانند از قبیل حافظه - پردازنده - شبکه و دیسک سخت باشد. برای بررسی هر یک از این محدودیتها شما نیاز به اندازه گیری آنها دارید. یکی از مهمترین محدودیتها که باعث افت شدید بازدهی SQL Server می شود محدودیت حافظه است.در این مقاله به بررسی هر یک از...
HamidJFard
نکته: اهمیت استراتژی پشتیبانگیری و بازیابی پایگاه داده در SQL Server
طراحی استراتژی پشتیبانگیری و بازیابی پایگاه داده ها یک عملیاتی است که در این روزها رنگ خود را در میان مدیران پایگاه داده به دلیل وجود تکنولوژی های جدیدی مانند SAN Replication , VM Replication و VM HADR از دست داده است. هر یک از پایگاه داده ها نیاز به استراتژی منحصر به فرد خود را دارند که وابستگی شدیدی به ارزش مالی و عملیاتی پایگاه داده دارد. بیشتر مدیران پایگاه داده و مدیران شبکه و زیر ساخت به است...
HamidJFard
نکته: اهمیت اجراء دستور DBCC CheckDB قبل از گرفتن فایل پشتیبان
در هر محیط پایگاه داده ای؛ گرفتن فایل پشتیبان بدون مشکل یکی از پر اهمیت ترین کارهایی است که یک مدیر پایگاه داده در انجام آن نباید کوتاهی کند. بر اساس تجربه بنده بیشتر مدیران پایگاه داده اقدام به گرفتن فایل پشتیبان بدون بررسی مشکلات ساختاری و منطقی پایگاه داده انجام می دهند که این امکان وجود دارد که داده های خراب در فایل پشتیبان ذخیره شود. چرا دستور DBCC CheckDB پر اهمیت است؟ -- این دستور تما...
HamidJFard
نکته: تغییر در SQL Server Optimizer Engine برای غیر فعال کردن مرتب سازی JOIN ها
برای اجراء یک دستور Query یکسری عملیاتی باید انجام گیرد که SQL Server بتواند آن Query را اجراء نماید. یکی از این عملیات Optimization نام دارد که توسط Optimizer Engine انجام می شود. در این قسمت از عملیات SQL Server سعی می کند در مدت زمان محدود یکی از بهترین Execution Plan ها را ساخته و در اختیار Query Executor قرار دهد. در حین ساخت Execution Plan تمامی اجزاء دستور Query حتی ترتیب قرار گرفتن JOIN ها...
HamidJFard
نکته: بازیابی داده های سالم از پایگاه داده خراب
احتمال خرابی داده یک جزء جدانشدنی از دنیای پایگاه داده است. اصولا مشکلات خرابی داده از سیستم دیسک سخت است به این صورت که در حین نوشتن داده ها بر روی دیسک سخت به هر دلیلی یکسری اختلالاتی ایجاد شده که نوشتن داده را به صورت کامل به اتمام نمی رساند یا داده به طور صحیح نوشته نمیشود.معمولا مدیران پایگاه داده به صورت روزانه یا هفتگی از پایگاه داده فایل پشتیبان تهیه می کنند تا در مواقعی این چنینی بتوانن...
SEOMaster
نکته: پشتیبان گیری در SQL Server- جلسه چهارم
انواع پشتیبان گیری ها در SQL Server SQL Server گزینه های مختلفی برای پشتیبانگیری در اختیار ما قرار می دهد. در مباحث قبلی به موضوع مدل های بازیابی پرداختیم. بیان کردیم که چه نوع از پشتیباگیری ها بر پایه مدل بازیابی پایگاه داده می توانند انجام شوند. در این بخش و بخش های بعدی در مورد هر کدام از این گزینه های پشتیبانی و نحوه ی اعمال انها با استفاده از T-SQL و SSMS خواهیم پرداخت. انواع مختلف پشتیبان...
SEOMaster
نکته: پشتیبان گیری در SQL Server- جلسه سوم
مدل بازیابی Bulk-Logged (گزارش گیری دسته ای) درSQL Server -- مرور کلی مدل بازیابی Bulk-logged دقیقا کاری رو انجام می ده که در اسمش اومده. در این مدل برخی عملیات های دسته ای مثلا BULK INSERT, CREATE INDEX, SELECT INTO و غیره را انجام می دهد و با این تفاوت که یک گزارش گیری کامل (fully logged) انجام نمی شود و این امر سبب می شود که فضای کمتری در گزارش تراکنش ایجاد شود. -- توضیح فایده استفاده...