触发器代码:
create or replace trigger gps_history_triger
before insert
ON vehicle_gps_history
for each row
begin
update gis_vehicle_gps
set LONGITUDE = :NEW.LONGITUDE,
LATITUDE = :NEW.LATITUDE,
KPM = :NEW.KPM,
ANGLE = :NEW.ANGLE,
MSG_REC_TIME = :NEW.MSG_REC_TIME,
VEHICLE_NUM = :NEW.VEHICLE_NUM
where VEHICLE_ID = :NEW.VEHICLE_ID;
end;我往表gps_history_triger表中插入数据,触发器无法更新gis_vehicle_gps中的数据。请高手帮忙看一下
create or replace trigger gps_history_triger
before insert
ON vehicle_gps_history
for each row
begin
update gis_vehicle_gps
set LONGITUDE = :NEW.LONGITUDE,
LATITUDE = :NEW.LATITUDE,
KPM = :NEW.KPM,
ANGLE = :NEW.ANGLE,
MSG_REC_TIME = :NEW.MSG_REC_TIME,
VEHICLE_NUM = :NEW.VEHICLE_NUM
where VEHICLE_ID = :NEW.VEHICLE_ID;
end;我往表gps_history_triger表中插入数据,触发器无法更新gis_vehicle_gps中的数据。请高手帮忙看一下
触发器代码:
create or replace trigger gps_history_triger
before insert
ON vehicle_gps_history
for each row
begin
update gis_vehicle_gps
set LONGITUDE = :NEW.LONGITUDE,
LATITUDE = :NEW.LATITUDE,
KPM = :NEW.KPM,
ANGLE = :NEW.ANGLE,
MSG_REC_TIME = :NEW.MSG_REC_TIME,
VEHICLE_NUM = :NEW.VEHICLE_NUM
where VEHICLE_ID = :NEW.VEHICLE_ID;
end;我往表gps_history_triger表中插入数据,触发器无法更新gis_vehicle_gps中的数据。请高手帮忙看一下难怪先前的不行,让你贴出操作代码
是要往表vehicle_gps_history表中插入数据,触发器才能更新gis_vehicle_gps中的数据
你先给这个表插入一个值
create or replace trigger dept_log_tri
before insert on dept
for each row
begin
update deptlog set
deptnolog=:new.deptno,
dnamelog=:new.dname,
loclog=:new.loc;
end;
SQL> select * from deptlog;--先查询deptlog表为空未选定行SQL> insert into dept values(60,'nanchang','jx');已创建 1 行。SQL> commit;提交完成。SQL> select * from deptlog;--往dept表中插入数据后查询deptlog表还是为空(你现在的情况)未选定行SQL> insert into deptlog values(60,'nanchang','jx');--往deptlog表中插入数据已创建 1 行。SQL> commit;提交完成。SQL> insert into dept values(70,'jiujiang','jx');--再往dept表中插入数据已创建 1 行。SQL> commit;提交完成。SQL> select * from deptlog;--得到你要的结果了 DEPTNOLOG DNAMELOG LOCLOG
---------- -------------- -------------
70 jiujiang jx
不好意思,写错了,我就是往vehicle_gps_history表写数据,然后去触发更新gis_vehicle_gps表
create table vehicle_gps_history
(LONGITUDE varchar(10),
LATITUDE varchar(10),
KPM varchar(10),
ANGLE varchar(10),
MSG_REC_TIME varchar(10),
VEHICLE_NUM varchar(10),
VEHICLE_ID int );
create table gis_vehicle_gps as select * from vehicle_gps_history;
---触发器
create or replace trigger gps_history_triger
before insert
ON vehicle_gps_history
for each row
begin
update gis_vehicle_gps
set LONGITUDE = :NEW.LONGITUDE,
LATITUDE = :NEW.LATITUDE,
KPM = :NEW.KPM,
ANGLE = :NEW.ANGLE,
MSG_REC_TIME = :NEW.MSG_REC_TIME,
VEHICLE_NUM = :NEW.VEHICLE_NUM
where VEHICLE_ID = :NEW.VEHICLE_ID;
end;
--测试数据
insert into gis_vehicle_gps values('','','','','','',23);
insert into vehicle_gps_history values('aa3','bb3','ec3','ef3','rt33','tt',23);
--查询结果
达到更新表gis_vehicle_gps目的