×

Views در SQL Server

فصل بیست و پنجم :

Views

View ها در SQL Server

View جدولیست مجازی.
جدولیست مجازی که سطر ها و ستون های آن بوسیله یک کوئری تعریف میشوند .
همانند جدول ها view نیز دارای سطر ها و یا ستونهاییست. فیلد های یک view می تواند فیلدهایی از جداول گوناگونی باشد این view بر مبنای آنها ساخته شده است .
کاربرد :
• برای سادگی کار - یک مجموعه دستور العمل پیچیده می تواند منجر به ساخت یک view شود. که بجای تکرار آنها در هربار فراخوانی تنها لازم است بروی ان همانند یک جدول کوئری اجرا نماییم.
• امنیت : فرض کنید که برای انجام برخی گزارشات نیاز دارید . نرم افزار و دیگری بهاطلاعت جداول شما دسترسی پیدا کنند. قطعا اجازه دسترسی به جداول ، مشاهده ساختار و امکان بروز رسانی و حذف اطلاعلات را به ان نرم افزار نخوهید داد. با توجخه به نیاز view هایی ایجاد میکنید که بطور کنترل شده ایی ستونهای خاص و یا رکورد های خاصی را ارائه دهد.
• بروی view ها می توانید index تنظیم کنید .

مثال :
create view testview
--WITH ENCRYPTION
as
select [FirstName],[LastName],ClassroomID,GorooheSeni=
case
when age<11 then 'کودک'
when age=11 then 'یازده ساله'
when age>11 and age<13 then 'نوجوان'
else 'جوان'
end
from [dbo].[Student]

select FirstName,LastName,GorooheSeni,ClassName from testview
inner join Classroom on testview.ClassroomID=Classroom.ID


محدودیت های view

• امکان ساخت view پارامتری وجود ندارد .
• view نمی توانند بر مبنای جداول موقتی temporary Table باشند .
در view نمی توان از order by استفاده کرد.
• تمامی جداولی که در ساختار view استفاده میشوند بایستی در دیتابیسی باشند که خود view در آن است .
در کوئری سازنده view نمی توانید از count(*) استفاده نمایید.

برقراری JOIN بین جداول دو دیتابیس مختلف

به فیلم مراجعه شود

View های مفید سیستمی

select * from sys.tables
select * from sys.databases
select * from sys.all_columns
select * from sys.database_files
select * from sys.objects
select * from sys.procedures



select * from INFORMATION_SCHEMA.TABLES
select * from INFORMATION_SCHEMA.VIEWS
select * from INFORMATION_SCHEMA.TABLE_CONSTRAINTS



مفاهیم و موضوعات این فصل عبارتند از :

  • View ها در SQL Server

  • WITH ENCRYPTION

  • SCHEMABINDING

  • Cross Database Join

  • System Views

vatantop
نظرات و سوالات درج سوال/ نظر