sql2000数据库应用设计中的一个问题

jaopen 2003-10-16 07:00:21
一个父子ER关系模型,其中父实体中的序号关键字设置为IDENTITY 属性,这个序号也放在子实体表中作为外键,同时在数据库设计中用到视图来统一表现某一种子实体,这个视图中则包含父子实体表中的相关字段,因为序号关键字纸在父实体表中自动生成,则视图的增加操作则无法进行,有什么办法解决这个问题?
...全文
56 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
jaopen 2003-10-20
  • 打赏
  • 举报
回复
建立触发器后,插入操作提示必须为Identity项提供数据
如何处理,其中Record_tab
包含RecordId(Identity)RecordDateTime,RecordPeople,ServiceType四项
----------------------------------------------
--代理人记录本视图的插入操作
CREATE TRIGGER [TriggerForCRS_View_Insert] ON [dbo].[CRS_view]
INSTEAD OF INSERT
AS
BEGIN
INSERT INTO dbo.Record_tab--对基本记录信息表的操作
SELECT RecordDateTime,RecordPeople,ServiceType
From inserted

IF((SELECT ServiceType FROM inserted)='故障处理')OR((SELECT ServiceType FROM inserted)='业务支持')
BEGIN
INSERT INTO dbo.BookingCustomer_tab--对客户信息表的操作
SELECT @@IDENTITY,OfficeNumber,OfficeName,Linkman,Telphone,'代理人'
FROM inserted

INSERT INTO dbo.Service_tab--对故障情况表的操作
SELECT @@IDENTITY,Application,Minutia,Description,Solution,HandleSymbol,HandleDateTime,HandlePeople
FROM inserted

IF(SELECT InnerconveySymbol FROM inserted)=1
BEGIN
INSERT INTO dbo.HandleProcess_tab--对处理过程表的操作
SELECT @@IDENTITY,InnerconveySymbol,InnerConveyDateTime,InnerAccepter,0,NULL,NULL,NULL,CustomReplySymbol,CustomReplyDateTime
From inserted
END
END
END


LoveSQL 2003-10-17
  • 打赏
  • 举报
回复
在试图上建立一个
INSTEAD OF INSERT 触发器,就可以了。
jaopen 2003-10-17
  • 打赏
  • 举报
回复
thanks,可否就我这种情况,在ado条件下提出一种实现方式
nadylu 2003-10-16
  • 打赏
  • 举报
回复
对视图的修改,要熟悉视图的限制:
1,通过视图修改数据时,视图不能影响一个以上的基础对象。比如视图A是基于TABLE1和TABLE2创建的。那么,只能通过视图A修改TABLE1和数据,或者修改TABLE2的数据。不能同时修改TABLE1和TABLE2的数据。
2,对列为计算值、内置函数和行集合函数不能进行修改。
3,在通过视图修改或插入数据时,必须保证未显示的列有值。比如在TABLE1上创建一个视图,TABLE1有三列:C1、C2和C3。视图的创建在C1和C2。那么通过视图对TABLE1插入数据时,必须保证C3有值(可以是缺省、NULL、IDENTITY或TIMESTAMP),否则不能风吹草动视图中插入行。
pengdali 2003-10-16
  • 打赏
  • 举报
回复
CREATE TRIGGER 名 on 视图
INSTEAD OF INSERT
AS
BEGIN
INSERT 主表 SELECT name1,name2 FROM inserted
insert 从表 (主表id,其他列) select @@IDENTITY,'cc' from inserted
END
椅子 2003-10-16
  • 打赏
  • 举报
回复
对的操作父表不应该在这个视图中完成。
这个视图应仅用于子体操作。

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧