With Encryption - With Check Option - With Schemabinding Kullanımı
merhabalar,
bu yazımda sizlere view ve functionlar ile birlikte kullanabileceğimiz With Encryption - With Check Option - With Schemabinding parametrelerini örneklerle açıklamaya çalışacağım.
With Check Option
Where filitresi ile oluşturulan viewlarda with check option kullanılmışsa o kriterin dışında bir veri view üzerinden eklenemez.
create VIEW vw_kisi
AS
select e.FirstName,e.LastName,e.Country from Employees e where e.Country='USA'
with check option
where koşulunda USA olduğu için aşağıdaki view üzerinden yapılan insert işlemi gerçekleşmeyecektir.
Not: insert update delete komutları tek tablolu viewlarda çalışır. joinli tablolarda iki farklı tabloya aynı anda ekleme yapmak istediği için çalışmaz.
insert into vw_kisi values('zülal','US','TR')
With Schemabinding
Kullanıldığında oluşturulan viewda ilgili kolon kilitlenir ve kaldırılamaz schema adı mutlaka yazılır ve schemabinding ile oluşturulan kolonlar arasına * koyulmaz mutlaka kolon adları olmalıdır.
**schema- tablonun kim tarafından görüntülenebileceği bilgisidir
**dbo -> database owner
create view vw_empnote
with schemabinding
as
(
select e.Notes from dbo.Employees e
)
With Encryption
With encryption parametresi kullanılarak oluşturulan veritabanı nesnelerinin scripti şifrelenir. Güvenlik sebebiyle diğer kullanıcıların görmesini istemediğimizde kullanılan encryption deyimini nesneyi alter yaparak kaldırabiliriz. ancak encryption yapılan nesnenin scriptini kendimiz de kaybedersek daima şifreli kalır.
create view vw_pn
with encryption
AS
(select p.ProductName,p.UnitPrice from Products p )
bu yazımda sizlere view ve functionlar ile birlikte kullanabileceğimiz With Encryption - With Check Option - With Schemabinding parametrelerini örneklerle açıklamaya çalışacağım.
With Check Option
Where filitresi ile oluşturulan viewlarda with check option kullanılmışsa o kriterin dışında bir veri view üzerinden eklenemez.
create VIEW vw_kisi
AS
select e.FirstName,e.LastName,e.Country from Employees e where e.Country='USA'
with check option
where koşulunda USA olduğu için aşağıdaki view üzerinden yapılan insert işlemi gerçekleşmeyecektir.
Not: insert update delete komutları tek tablolu viewlarda çalışır. joinli tablolarda iki farklı tabloya aynı anda ekleme yapmak istediği için çalışmaz.
insert into vw_kisi values('zülal','US','TR')
With Schemabinding
Kullanıldığında oluşturulan viewda ilgili kolon kilitlenir ve kaldırılamaz schema adı mutlaka yazılır ve schemabinding ile oluşturulan kolonlar arasına * koyulmaz mutlaka kolon adları olmalıdır.
**schema- tablonun kim tarafından görüntülenebileceği bilgisidir
**dbo -> database owner
create view vw_empnote
with schemabinding
as
(
select e.Notes from dbo.Employees e
)
With Encryption
With encryption parametresi kullanılarak oluşturulan veritabanı nesnelerinin scripti şifrelenir. Güvenlik sebebiyle diğer kullanıcıların görmesini istemediğimizde kullanılan encryption deyimini nesneyi alter yaparak kaldırabiliriz. ancak encryption yapılan nesnenin scriptini kendimiz de kaybedersek daima şifreli kalır.
create view vw_pn
with encryption
AS
(select p.ProductName,p.UnitPrice from Products p )
Yorumlar
Yorum Gönder