PDA

View Full Version : سوال: کاربرد عبارت WITH SCHEMABINDING چیه؟



علیرضا حسن زاده
شنبه 01 خرداد 1389, 11:18 صبح
سلام
کاربرد عبارت WITH SCHEMABINDING چیه؟

amir_alaki
شنبه 01 خرداد 1389, 12:56 عصر
با سلام

این Option در ساخت View ها استفاده میشه و کاربرد اصلی اون اینه که اگر به طور مثال شما View ساخته باشید از Tbl1 که سه تا فیلد Name,Family,Tel داره و بعد از مدتی یکی از این فیلد ها از جدول به هر دلیلی حذف بشه اون موقه اگر با استفاده از این WITH SCHEMABINDING اون View را ساخته باشین به طور خودکار اون فیلد خاص که حذف شده از View حذف میشه و برنامه و اجرای اون با Error مواجه نمی شه

موفق باشید

AminSobati
چهارشنبه 05 خرداد 1389, 19:53 عصر
سلام دوست عزیزم،
اگر این گزینه در تابع یا View استفاده شده باشه، Objectهایی که تابع یا View ازشون استفاده کردن دیگه نمیشه در ساختارشون تغییر ایجاد کرد مگر اینکه باعث بروز خطا در تابع یا View نشن. Schemabinding نوعی ارتباط بین ساختار View/Function با Object لایه پایینی ایجاد میکنه

علیرضا حسن زاده
چهارشنبه 05 خرداد 1389, 23:55 عصر
سلام دوست عزیزم،
اگر این گزینه در تابع یا View استفاده شده باشه، Objectهایی که تابع یا View ازشون استفاده کردن دیگه نمیشه در ساختارشون تغییر ایجاد کرد مگر اینکه باعث بروز خطا در تابع یا View نشن. Schemabinding نوعی ارتباط بین ساختار View/Function با Object لایه پایینی ایجاد میکنه
ببخشید خیلی معذرت می خوام ولی من متوجه نشدم یعنی چی میشه یکم واضح تر بفرمایید؟ با مثال هم باشه خیلی عالی میشه (دارم DataBase یه برنامه که بقول خودشون خیلی مهندسی طراحی شده رو آنالیز می کنم واسه خودم خیلی از این چیزا توش استفاده کردن من هم سر در نمی یارم که واسه چی استفاده شده فکر کنم رمزگذاری SP و View رو هم شما جواب دادین که خیلی متشکرم)

AminSobati
پنج شنبه 06 خرداد 1389, 17:01 عصر
create table t1(
c1 int,
c2 int)
go

create view v1
with schemabinding
as
select c1,c2 from dbo.t1
go

alter table t1 -- cannot drop the column
drop column c1


alter view v1
--with schemabinding
as
select c1,c2 from dbo.t1
go

alter table t1 -- You can do it now
drop column c1