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

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

آموزش انواع زبان های برنامه نویسی
آموزش زبان های برنامه نویسی

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

آموزش انواع زبان های برنامه نویسی

پیدا کردن یک ستون در کل جدول های دیتابیس در Sql Server

پیدا کردن یک ستون در کل جدول های دیتابیس


ما قصد داریم یک ستون از دیتابیس را در کل جدول های دیتابیس جستجو کرده و نام جدول هایی که این ستون به کار رفته است را پیدا کنیم.

برای این کار از کدهای دستوری زیر استفاده میکنیم


SELECT c.name AS ColName, t.name AS TableName

FROM sys.columns c

    JOIN sys.tables t ON c.object_id = t.object_id

WHERE c.name LIKE '%ShiftId%'

توضیحات کامل این مقاله را در سایت پروژه چی بخوانید


نحوه ی نوشتن یک StoreProcedure با شرط های مختلف مانند دستورات Ado

نحوه ی نوشتن یک StoreProcedure با شرط های مختلف مانند دستورات Ado




EXECUTE sp_executesql 

          N'select * from htreatment.TbLimitGroup 

          WHERE statuscode = @level',

          N'@level tinyint',

          @level = 1;

کاهی اوقات در sql server هنگام نوشتن sp لازم است که برخی شرط ها حذف شود و اصلا در sp نادیده گرفته شود با استفاده از روش بالا این کار به سادگی قابل انجام می باشد.

توضیحات کامل این مقاله را در سایت پروژه چی بخوانید

نحوه پیدا کردن فیلد یا عباراتی در کل دیتابیس در Sql Server

نحوه پیدا کردن فیلد یا عباراتی در کل دیتابیس در Sql Server

ما در این مثال قصد داریم که فیلدی از یک جدول در دیتابیس را در کل پایگاه داده sql server جستجو کنیم و ببینیم در چه جداولی از sql فیلد مورد نظر ما وجود دارد. برای این کار از دستورات زیر استفاده می کنیم.


-- Search in All Objects

SELECT OBJECT_NAME(OBJECT_ID),

definition

FROM sys.sql_modules

WHERE definition LIKE '%' + 'BusinessEntityID' + '%'

GO


در دستورات بالا باعث می شود که در تمامی آبجکت های اسکویل سرور را  اعم از sp یا view یا table به دنبال فیلد مورد نظر من بگردد و در هر جا که استفاده شده باشد پیدا می کند. و نمایش می دهد.


توضیحات کامل این مقاله را در سایت پروژه چی بخوانید

تابع Lead و Lag در Sql Server

 تابع Lead و Lag  در Sql Server چست و چه کاربردی دارد؟


در زمان طراحی کوئری، خیلی از مواقع نیاز است که به سطرهای قبل یا بعد از سطر جاری دسترسی داشته باشیم. یکی از روش های موجود استفاده از تابع Row number بود که از نسخه 2005 اس کیو ال به بعد پشتیبانی می شود. اما از نسخه 2012 دو تابع مفید Lead وLag قابل استفاده هستند. 


تابع LAG : دستیابی به مقدار یک فیلد در سطرها قبل از سطر جاری


LAG (value_expression [,offset] [,default]) OVER ([query_partition_clause] order_by_clause)



تابع LEAD : دستیابی به مقدار یک فیلد در سطرها بعد از سطر جار


LEAD (value_expression [,offset] [,default]) OVER ([query_partition_clause] order_by_clause)


پارامترهای موجود در هر تابع به صورت زیر هستند:

value_expression : نام ستون مورد نظر

Offset: تعداد سطر بعد/قبل از سطر جاری

Default: مقدار پیش فرض در صورت خارج از رنج بودن Offset

query_partition_clause: گروهبندی روی ستون خاص


روش استفاده از تابع Lead را با یک مثال شرح خواهیم داد در این مثال قصد داریم کارمندان یک روز به تاریخ شروع پروژه بعدی را  اضافه کنیم.


SELECT *,
DATEADD(DAY, -1, LEAD(Emp_Startdate, 1,'01-Jan-2100') --کسر کردن یک روز از تاریخ رکورد بعدی
        OVER (PARTITION BY   Emp_Name ORDER BY   Emp_Startdate ASC))   AS EndDate
FROM   Employee



توضیحات کامل این مقاله را در سایت پروژه چی بخوانید


نحوه استفاده از Pivot در Sql Server

نحوه استفاده از Pivot در Sql Server


Pivot table ها در واقع همانند سایر  Table های دیگر می باشند فقط با این تفاوت که در نمایش ردیف و ستون های آنها مقداری تفاوت وجود دارد .

دستور pivot جزو دستوراتی از Sql server می باشد که ممکن است در بیشتر پروژه هایمان برای نمایش گزارشات مختلف   به استفاده از آن نیاز داشته باشیم . کاربرد دستور pivot تقریبا تبدیل نمایش خروجی یک کوئری از حالت ردیفی به ستونی می باشد . به صورت خیلی خلاصه بخواهیم نحوه کارکرد این دستور را بیان کنیم ، کار آن یک چرخش 90 درجه جداول  می باشد ، یعنی جای ستون و ردیف ها را با هم جابه جا کنیم .

در این مثال قصد داریم  مجموع ورودی و خروجی های یک جدول خاص از انبار را استخراج کنیم.


SELECT *
FROM (
SELECT [type]
FROM stock
WHERE [type] IN ('s', 'i')
) t
PIVOT (
COUNT(t.[type]) FOR [type] IN (s ,i)   
) p


توضیحات کامل این مقاله را در سایت پروژه چی بخوانید


یک مثال از نوشتن Cursor در SqlServer


کار با Cursor در SQL  با یک مثال ساده


در این مثال سعی کردیم که ساختار Cursor را نمایش دهیم و اطلاعاتی را از جدولی از دیتابیس به نمایش در آوریم


DECLARE @id1 INT;

DECLARE @n1 NVARCHAR(50);


DECLARE @cur CURSOR


SET @cur=CURSOR FOR SELECT RangeId,RangeName FROM dbo.Range


OPEN @cur;


FETCH NEXT FROM @cur INTO @id1,@n1;

WHILE @@FETCH_STATUS=0


BEGIN


PRINT CAST(@id1 AS NVARCHAR(50))+' '+@n1

FETCH NEXT FROM @cur INTO @id1,@n1


END


CLOSE @cur

DEALLOCATE @cur


توضیحات کامل این مقاله را در سایت پروژه چی بخوانید


نحوه نوشتن Curser بر روی دیتابیس


نحوه نوشتن Curser بر روی دیتابیس


در این مثال قصد داریم که بر روی یک جدول از دیتابیس یک کرسر قرار دهیم که لیستی از فیلد هایی که مقدار دارند تعداد آنها را برای ما برگرداند و اسم فیلد مورد نظر را نمایش دهد.


--declare @table as table(name nvarchar(256),valuetable nvarchar(256), countValue int)

declare @name as nvarchar(256)

declare cur cursor for

select name from sys.columns where OBJECT_NAME(object_id)='Name Table' and

name not in (

'Fild1',

'Fild2',

'Fild3',

'Fild4'



)


order by  name

open cur

fetch next from cur into @name

while(@@FETCH_STATUS=0)

begin

declare @str as nvarchar(4000) =' select '''+@name+''','+@name +',  COUNT(*) from Name Table  group by  '+@name

print @str

exec(@str)

fetch next from cur into @name


end

close cur

deallocate cur


در این مثال که فیلد های یک و دو و سه داریم نمیخواهیم آنها را نمایش دهد و تعداد آنها را برای ما برگرداند مشخص کرده ایم.

دانلود 6.0 Redgate SQL Prompt، اینتلی سنس intellisense جامع و کامل برای SQL


دانلود 6.0 Redgate SQL Prompt، اینتلی سنس intellisense جامع و کامل برای SQL


SQL Prompt یک add in برای SQL Server Management و Visual Studio می باشد که intellisense قوی و سبک را برای نوشتن کدهای اسکریپت SQL فراهم می کند

5 روشی که SQL Prompt برای برنامه نویسی سریع تر استفاده می کند :

1. جدید! سابقه تب ها - ذخیره، جستجو، و بازیابی زبانه ها در SSMS
2. استفاده از IntelliSense در تکمیل کد
3. قالب بندی کد های SQL برای خوانایی بیشتر
4. استفاده از بریده کدها code snippets
5. Refactor کد SQL


به همراه آموزش نحوه کرک و فعال سازی آن


حجم فایل : ۷.۸۴ مگابایت

دانلود فایل SQL Prompt 



نحوه کذاشتن محدودیت بر روی یک فیلد از جدول در Sql Serve



نحوه گذاشتن یک محدودیت بروی جدولی از دیتابیس در Sql Server


برای گذاشتن محدودیت یا constraints بر روی یک فیلد از جدولی در دیتابیس می توانیم راه های مختلفی استفاده کنیم

که داری چند نوع می باشد.

نوع اول 

یکتایی مقدار در یک فیلد از جدول از کد زیر استفاده می کنیم.


alter table Table_1

add unique(a1)

نوع دوم

برای اینکه یک فیلد را محدود کنیم که این فیلد باید داده ای بین یک رنج خاصی را دریافت کند

یا داده های این فیلد از یک عدد مشخصی بیشتر نباشد.

alter table Table_1

add check(a1>15)


توضیحات کامل این مقاله را در سایت پروژه چی بخوانید


نحوه ساخت یک کاربر در Sql Server و ورود کاربر به سیستم


نحوه ساخت یک کاربر در Sql Server و ورود کاربر به سیستم


 و مشخص کنیم به چه دیتابیس هایی دسترسی داشته باشد.


ابتدا در روت دیتابیس ها  به منو Security رفته و سپس در Login رفته و بروی آن راست کلیک می کنیم و NewLogin را انتخاب می کنیم


Security>Login>RightClik>NewLogin


در کادر محاوره ای باز شده ابتدا یک نام مناسب برای کاربر مورد نظر وارد می کنیم

سپس پسورد آن را نیز مشخص می کنیم.


اگر هنگام ورود به سستم با خطا روبرو شدین باید باید روی سرور اصلی راست کلیک کنید و سپس Propertise را بزنید و سپس به زبانه Security   و بعد از آن روی گزینه 


sql server and windows Authentication mod


کلیک میکنیم 

و بعد اوکی میکنیم و نهایتن اسکویل سرور را ریستارت می کنیم


توضیحات کامل این مقاله را در سایت پروژه چی بخوانید