m0_60221350 2021-07-15 15:09 采纳率: 0%
浏览 46

请教一个关于oracle语句的问题

创建语句级触发器,需要对scott用户的emp表上进行增删改操作的用户进行安全检查,如果不是scott用户且不是周一至周五上班时间(9:00~17:00),不能够做数据增、删、改的操作。
create or replace trigger biud_emp
before insert or update or delete on emp
DECLARE
v_currentweak VARCHAR(20) ;
v_currenthour VARCHAR(20) ;
begin
SELECT TO_CHAR(SYSDATE,'day'),TO_CHAR(SYSDATE,'hh24') INTO v_currentweak, v_currenthour FROM dual ;
/不是scott用户,则不能够做增、删、改操作。/
IF TRIM(v_currentweak)='星期一' OR TRIM(v_currentweak)='星期五' or user not in('SCOTT') THEN
RAISE_APPLICATION_ERROR(-20008,'在周五及周一you do not have access to modify this table.') ;
end if;
end;

  • 写回答

2条回答 默认 最新

  • 关注

    还要查询一下当前用户,判断是否为scott用户。
    user 是哪里来的。

    评论

报告相同问题?

问题事件

  • 创建了问题 7月15日

悬赏问题

  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 lammps拉伸应力应变曲线分析
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试,帮帮忙吧
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建