关于右连接视图(oracle9+Delphi)(100分)

  • 主题发起人 主题发起人 ylbee
  • 开始时间 开始时间
Y

ylbee

Unregistered / Unconfirmed
GUEST, unregistred user!
我做了一个这样的右连接视图:
select stu.stu_no,stu.stu_name,ach.ach_num,ach.Ach.item,ach.Date
from ach right outer join stu on (exa_no)
我希望做到用户更改的结果,能更新ach 表。包括删除,修改,插入。
针对ach表。这个视图的触发器要如何实现?
在这里要提醒大家,右连接视图中,只要学生stu表有的纪录都会列出来,
而成绩ach表中,学生有对应的纪录就会列出来,若没有,就列为空纪录

stu_no stu_name ach_num ach_item ach_date
001 xs 90 1 2002-08-06
001 xs 86 2 2002-09-08
002 zz
003 df 80 1 2002-08-06
005 kk


那么操作中,对没有成绩的同学,填写成绩,看起来是 modify,
而对于ach表而言则实际上是insert。不知我的理解对不对?
 
the view with outer join is not updatable
 
能不能,变通一下,比如作一个触发器,让他发现有数据变化就更新指定的一个表呢?
关键是如何实现
我想问大家在碰到这样的情况,你们都怎样处理的,比如:
输学生成绩,总不能连学号和姓名,都要用户输吧,一般就是对着姓名输入成绩就可以了.
 
结合前台程序,大家又什么解决经验望指教!!!
 
拆成两个表,各自更新,不过要自己写点代码。
 
本来就是2个表
主要是太麻烦
望指教
 
假设两个表应该是通过stu.id = ach.stu_id关联,STUCOUNT是学生数目
当要输入学生成绩时前,自动将所有学生插入到ach表
即增加STUCOUNT条记录,ach.ach_num,ach.Ach.item,ach.Date等字段设为空!
输入学生成绩操作即为修改操作。。。。
 
后退
顶部