SQL Server视图问题.高手请指点(100分)

  • 主题发起人 主题发起人 139131
  • 开始时间 开始时间
1

139131

Unregistered / Unconfirmed
GUEST, unregistred user!
视图如何可以执行insert操作?
 
设计该视图的INSTEAD OF 触发器
 
为了数据一致性,要用Insert of 触发器
 
如果你的视图是由多个表列组成的话,当你利用insert命令添加数据时,在同一insert命令内
只能指定相同表下的列
 
小弟从未写过触发器,视图如下:
CREATE VIEW dbo.RegisteNum
AS
SELECT dbo.RegisteCharge.SingleRegiste AS 单科挂号,
dbo.RegisteCharge.CostTypeID AS 费别ID,
dbo.RegisteCharge.RegisteCharge AS 挂号费,
dbo.RegisteCharge.TotalRegiste AS 挂号数,
dbo.RegisteCharge.DiagnoseCharge AS 诊察费, dbo.RegisteInfo.Name AS 姓名,
dbo.RegisteInfo.Sex AS 性别, dbo.RegisteInfo.PayClassID AS 付费类别ID,
dbo.RegisteInfo.SocietyEnsureNo AS 社保号,
dbo.RegisteInfo.CompanyName AS 单位, dbo.RegisteInfo.RegisteTypeID AS 类别,
dbo.RegisteInfo.DepartmentID AS 科室ID, dbo.RegisteInfo.DoctorID AS 医生ID,
dbo.RegisteInfo.Age AS 年龄, dbo.RegisteInfo.DiagnoseType AS 诊断类别,
dbo.RegisteInfo.RecipeNo AS 处方号, dbo.RegisteInfo.operator AS 操作员ID1,
dbo.RegisteCharge.CostCharge AS 工本费, dbo.RegisteCharge.TotalCharge AS 总计,
dbo.RegisteCharge.PayTypeID AS 支付方式ID,
dbo.RegisteCharge.operatorID AS 操作员ID2, dbo.RegisteInfo.Isfirst
FROM dbo.RegisteInfo INNER JOIN
dbo.RegisteCharge ON
dbo.RegisteInfo.RegisteNoID = dbo.RegisteCharge.RegisteNoID
请高手指点分不够可再加!

 
各位老兄,这个问题我也不懂,本来是想来听课的
但在SQL的书上看到这样一句话,不解:

虽然触发器可以参照视图或临时表但不能在视图或临时表上创建触发器而只
能在基表或在创建视图的表上创建触发器

那么到底是否可以在视图上创建触发器??
 
视图没有触发器吧,我用SQL好多年,没用过视图上的触发器.
 
各位视图好象只能用SELECT吧
 
应该不是吧
肯定可以的
SQL帮助里有
1.多表更新,设计该视图的INSTEAD OF 触发器
2.单表更新是可以的
 
接受答案了.
 
后退
顶部