我的某SQLSERVER数据库,含有两一对一的表A和B.表B含有外码BA指向A中的自动增加主键AK.
为了使用,我建一视图V,内容是A和B的连接.针对添加/删除操作,我分别定义了Instead of 触发器.
程序中使用一个TADOTable 连接V.
当执行Insert操作时时,出现异常,提示为从表的外码为空.跟踪原因,原来是ADO将我对视图V的Insert操作,分解成了分别对主表A和从表B的Insert操作,但是他又不知道去更新从表B的外码.
于是出现滑稽的一幕:ADO得知我的视图是由其他表构成,于是自作主张去更新其他表,使我的自定义触发器落了空;但是他又做不好这个更新,只好最后告诉我出错.
哪位知道解决办法,或知道我的理解不对,烦请相告!