如何使用索引视图和一个只有2行的表限制业务规则
上一篇 /
下一篇 2012-08-30 13:23:24
/ 个人分类:数据库
51Testing软件测试网3RHa1Qo 假设一个业务规则规定某些情况不允许存在.并且不允许使用外键进行限制,此时Instead of
触发器可以作为备选答案,但是通常这类触发器在以后带来的麻烦会多于其带来的便利。还有一种解决方式是使用包含唯一索引的索引视图与只有一个两行的
dummy table进行连接。51Testing软件测试网l2e o[6b`)}
"Tp7A USg$v
v+QP0 假设你有如下两个表,地区和办事处
;LCg/M1u~%A7c*`051Testing软件测试网Wg ex2z \ Region表51Testing软件测试网1p
zle9G'S&A
)hSJ5h7O;khC,iE0RegionId51Testing软件测试网T
F7R5v7F,IG | RegionName :H$t
fV`0 | IsActive G&ciY,iE0 | EffectiveDate nr
@Mu hY'U0 | ExpirationDate51Testing软件测试网|r:HgQr*?LB |
1 (WhQ9l"t;`Wu&NX0 | East O/_'u6Da^0 | 151Testing软件测试网1Emcv)n-fU | 1/1/2009 xQ3CJ!a?Q w:u-]
w3}0 | NULL51Testing软件测试网Km)QaLz |
251Testing软件测试网+\_Q]
Gfx | West51Testing软件测试网}4p1F-aK.T?4mW"C | 1 -t'B r[-K9z\O)X0 | 1/1/200951Testing软件测试网2K!t`c'Zp$p)P | NULL51Testing软件测试网#upQ7[T h,Z@hg2N |
351Testing软件测试网7t$HoQe'g | North51Testing软件测试网7G.a$itXZ,Sz | 1 {K]v
FAQ$X3R\ _0 | 1/1/2009 (AJA;j.\-U0 | NULL VTz"~3Xq {0 |
451Testing软件测试网#C&p zQ j5`;}#M~ | South (_,O:h
l0u(r;n~K |0 | 1 4p]NR|-QI;E(Z0 | 1/1/200951Testing软件测试网V U2j
pkO%S | NULL51Testing软件测试网ZqPEv,? kdD |
5 V*^1D)zJ\l[0 | Antarctica51Testing软件测试网v#NW @Mis&\ | 1 X,O| c^%|0 | 1/1/2009 N*Q%}F;I9Z+sm g)H0 | NULL51Testing软件测试网@}}kS?M |
Office表
Qb,`yY B6w0U)@qQN-g9J0