a

ABLY مقالات و مطالب مجموعه

صفحه اصلی / ABLY مقالات و مطالب مجموعه

بسم الله الرحمن الرحیم

آموزش Generate Scriptx در SQL Server

بسیاری از مواقع شما نیاز دارید اطلاعات درون پایگاه داده خود را از یک SQL Server به نسخه دیگری منتقل کنید، متاسفانه شما نمی توانید اطلاعات درون یک پایگاه داده را به نسخه دیگری که از SQL Server قدیمی تر استفاده می کند منتقل کنید.

به طور مثال، اگر بخواهید اطلاعات درون پایگاه داده خود را که زا SQL Server 2012 استفاده می کند به SQL Server 2008 منتقل کنید، چطور این کار را انجام می دهید؟

یکی از این روش ها استفاده از Generate Script می باشد.

برای این کار کافی است مراحل زیرا طی نمایید:

ابتدا SQL Server خود را باز نمایید، سپس بر روی پایگاه داده ای که قصد دارید به SQL Server دیگری منتقل شود راست کلیک کنید سپس از گزینه Tasks زیر منوی Generate Scripts را انتخاب کنید.

Generate Script

بسم الله الرحمن الرحیم

فراخوانی Stored Procedure

برای انجام هر کار طبیعتا روش های متفاوتی وجود دارد. در این مقاله قصد داریم نحوه یافتن یک Stored Procedure را در روش ها مختلف بررسی کنیم.


برای مثال در ابتدا یک Procedure به صورت زیر تعریف می کنیم.

CREATE PROCEDURE TESTING
(@OPTION INT)
AS
IF @OPTION=0
SELECT 1 AS NUMBER
ELSE
SELECT 100 AS NUMBER
GO

برای یافتن و مشاهده این Procedure می توانیم از روش های زیر کمک بگیریم.

بسم الله الرحمن الرحیم

بدست آوردن کانکشن های فعال در SQL Server

یکی از دوستان در خصوص نحوه بدست آوردن Connection هایی که به هر دیتابیس متصل است، سوالی مطرح کردند.

در SQL Server شما به سادگی می توایند اطلاعات تمامی کاربرانی که به Database ها متصل هستند را بدست آورید. برای بدست آوردن این اطلاعات کافی است که Query زیر را اجرا کنید.

SELECT DB_NAME(dbid) AS DBName,
COUNT(dbid) AS NumberOfConnections,
loginame
FROM    sys.sysprocesses
GROUP BY dbid, loginame
ORDER BY DB_NAME(dbid)

تصویر زیر خروجی دستور ما را نمایش می دهد

بسم الله الرحمن الرحیم



در این آموزش قصد دارم شما را با یکی دیگر از ویژگی های SQL Server آشنا کنم. متاسفانه بسیاری از افراد فکر می کنند SQL Server فقط یک ابزار برای نگهداری اطلاعات است! و از بسیاری از سرویس های SQL Server بی خبر هستند.

آموزش مانیتورینگ SQL Server و ثبت تغییرات ایجاد شده

SqlDependency

کلاس SqlDependency و Query notifications ابزارهایی هستند که به شما اجازه می دهند SQL Server را مانیتور کنید این ابزار ها در SQL Server 2005 ارائه شدند.

Query Notifications

Query Notifications به برنامه شما اجازه می دهد در صورتی که داده ای در دیتابیس تغییر داده شد، از این تغییر اطلاع پیدا کند.
هدف این کلاس ذخیره کردن اطلاعاتی جدیدی است که مداوم در دیتابیس ایجاد می شود.


اگر شما بخواهید این کار را بدون استفاده از این سرویس انجام دهید باید یک تایمر داشته باشید که در بازه های زمانی معین اطلاعات را بررسی و در صورتی که تغییری ایجاد شد این اطلاعات را برای شما ارسال کند که تعیین این تغییر خود امری دشوار خواهد بود، اگر بخواهیم ساده بگوییم شما کاری را که SQL Server قبلا انجام داده و آن را بهینه کرده است می خواهید انجام دهید!

قبلا در مباحث دیگرSQL Server Broker را توضیح داده ام، در اینجا نیز برای استفاده از این سرویس باید از Service Broker و QUEUE استفاده کنید.

بسم الله الرحمن الرحیم

آموزش OLAP و OLTP

با توجه به تکنولوژی های مرتبط در خصوص طراحی و پیاده سازی پایگاه داده ها برای استفاده از سرویس های تحلیلی می توان این پایگاه داده را به دو

دسته کلی تقسیم کرد:

OLAP: همان طور که از نام این گروه مشخص است این پایگاه داده ها برای تحلیل و بررسی مورد استفاده قرار می گیرند که طبیعتا طراحی و ساختار آن با پایگاه داده های معمولی متفاوت خواهد بود. مثلا در طراحی این پایگاه داده ها از ایندکس های بیشتری استفاده می شود که سرعت واکشی و دسترسی به اطلاعات افزایش می یابد اما در عین حال سرعت درج و بر روز رسانی کاهش یافته که این مسئله باعث می شود همین کار در پایگاه داده های OLTP مناسب نباشد. معمولا این پایگاه داده را با کلمه DW خاتمه می یابند. DW مخفف عبارت Data warehouse می باشد که بیانگر پایگاه داده هایی است که برای تحلیل طراحی شده اند

OLTP: این پایگاه داده ها، همان پایگاه داده های اصلی هستند که طبیعتا هر مهندس DBA آن را برای بایگانی و جمع آوری اطلاعات ایجاد می کند. در مبحث BI  (یا همان Business Intelligence که قبلا  توضیحاتی را ارائه داده شد،BI  در واقع بیانگر تبدیل داده ها برای تفسیر و تحلیل برای تجارتی هوشمند می باشد) شما می بایست ابتدا پایگاه داده خود را به صورت ساختار یافته طراحی کنید و سپس برای مباحث DM  نسخه جدیدی از آن طراحی کنید البته معمولا در صورتی که پایگاه داده شما به درستی طراحی شده باشد تغییرات زیادی لازم نیست.

 

مفاهیم مربوط به طراحی OLAP

مهمترین مفهومی که در طراحی سرویس های تحلیلی وجود دارد، مکعب است. مکعب، نمایشی چند بعدی از مقدار کمی مورد تحلیل است. اگر بخواهیم خیلی صریح توضیحی ارائه دهیم، این مثال را در نظر بگیرید که شما می خواهید بدانید هر کالا با چه تعدادی و در چه زمان هایی و توسط چه مشتریانی خریداری شده است. خوب هر کدام از پارامتر ها را یک مقیاس در نظر بگیرید (طول، عرض و ارتفاع) اما نکته قابل توجه این مسئله است که در این مفاهیم می تواند بعد های بیشتری داشت، در این مثال پارامترهای دیگری چون فروشند گان، نوع فروش، سیستم کالا بر، و... پارامترهای دیگری را می توان دخیل کرد اما چون می خواهیم مثال ما ساده باشد همان سه بعد را در نظر می گیریم.

بسم الله الرحمن الرحیم

آموزش جداول موقت در SQL Server

همانطور که می دانید در SQL server یک پایگاه داده از پیش تعریف شده با نام Tempdb وجود دارد، در بعضی مواقع شما نیاز به یک جدول موقت نیاز دارید این جداول در این پایگاه داده ذخیره می شود البته جداول به دو دسته تقسیم می شوند یکی ما متغییر هایی از جنس جدول و دیگری جداول موقت، منظور ما جداول موقت است.

خوب برای استفاده از ویژگی متغییر های جداول موقت کافی است مثل مثال زیر عمل نمایید:

 


DECLARE @Table TABLE
(

id INT ,name NVARCHAR(MAX)
);
DECLARE @i INT =0
WHILE(@i<20)
BEGIN
INSERT INTO @Table ([id],[Title]) VALUES (@i,'ESH')
SET @i+=1;
END

SELECT * FROM @Table

--UPDATE

--DELETE

بسم الله الرحمن الرحیم

آموزش SQL Server

در بعضی مواقع نیاز است بجای نمایش نام ستون ها، مقدار فیلد به عنوان نام ستون و مقدار آن زیر ستون نمایش داده شود خوب بدون توضیح اضافی یک مثال مطرح می کنیم


SELECT [shiraz],[tehran]
FROM
(
SELECT [Title]
      ,[salary]
  FROM [emp]
) AS TEMP
PIVOT
(

SUM(salary) FOR [Title] IN ([shiraz],[tehran])
)AS PVT

و در نهایت خروجی دستور

بسم الله الرحمن الرحیم

آموزش برنامه نویسی ناهمگام در سی شارپ

در این بخش می خواهیم در خصوص نحوه و شیوه های اجرای دستورات در اسکیوال مباحثی را معرفی کنیم. همان طور که شما می دانید در زبان های مختلف برنامه نویسی در خصوص نحوه اجرای دستورات دو روش اصلی Synchronize و  ASynchronize وجود دارد. در روش Synchronize تا اتمام دستورات نرم افزار شما عملا متوقف شده و به اصطلاح Lock می شود خوب وقتی این اتفاق برای ثبت یک رکورد باشد هیچوقت محسوس نیست اما فکر کنید این فرایند برای ثبت تعداد زیادی رکورد اتفاق بیافتد در این حالت سایر پردازش های نرم افزار شما باید منتظر بمانند تا فرایند کار با اسکیوال به پایان برسد!

در روش دوم  ASynchronize، پردازش های اسکیوال شما همراه با سایر پردازش های نرم افزار شما همزمان انجام خواهد شد.

مثال:

برای دانلود مثال لطفا کلیک کنید
عنوان: ASynchronize
حجم: 1.05 کیلوبایت

بسم الله الرحمن الرحیم

 آموزش SQL Server

در بسیاری از پروژه ها به دلیل حجم پایین اطلاعات و تراکنش اندک در RW کردن اطلاعات هیچ نیازی به بهینه سازی اطلاعات نیست، اماممکن است شما هم مثل بنده بخواهید پایگاه داده ای را طراحی کنید که سرعت واکشی بسیار

0912 097 5516 :شماره تماس
0713 625 1757 :شماره تماس