餐厅点餐系统:
有个订单表-->定单对应的菜表,订单对应的酒水表。。。下面就是最恶心的(要求要一个订单的修改的详细记录),详细记录里面有:是顾客、前台还是服务员修改了菜单,添加/删除/修改了 哪些菜或酒水(以及菜或酒水的注释信息),修改了总订单表的备注信息,注释信息,修改时间。。。。想半天没想明白怎么建。。。
//总的订单表
create table order(
id number primary key,
oid number unique,
note varchar2(),
...//省略一些属性
)
//订单菜表
create table orderdish(
id number primary key,
oid number,
....
foreign key(oid) references order(oid) on delete cascade
...
)
//订单酒水表。。。跟菜表差不多
现在需求要 记录订单之后修改的信息。。。。网上有人让用触发器实现,可是我查看触发器半天教程还是无从下手
------解决方案--------------------
这个是软件中很基本的日志功能,只要有一个比较完善的日志系统,这个功能都很容易实现。建议不在数据库中用触发器实现。如果要用触发器实现也行,建一个触发器,在触发器中把操作的信息,如增删改的数据写到日志表中。
------解决方案--------------------
:new:cid:=v1+1; --太出心了.., 这么多冒号
------解决方案--------------------
------解决方案--------------------
create or replace trigger trigger_cai
before update on cai for each row
begin
--用:old和:new 记录修改数据
--用sys_context记录 用户信息
end;