首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Oracle上获得此数据权限配置?

如何在Oracle上获得此数据权限配置?
EN

Stack Overflow用户
提问于 2015-07-13 11:56:35
回答 1查看 51关注 0票数 0

我正在编写一个应用程序,我想知道是否可以在数据库端(Oracle)而不是应用程序端获得此数据权限配置。

它基本上与某些表相关,这些表必须存储无法在输入后一天编辑的历史数据.

表十

字段:

  • WhatEver as varchar2
  • MyDate as DateTime

对于每一行,如果(当前日期= MyDate),则允许编辑。否则,不行。

可以吗?是否需要使用Oracle标签安全?

我在寻找可以作为访问权限来管理的东西(授权/撤销.)管理员可以创建、授予或撤销对用户或角色的此类权限。

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-13 12:23:05

行级触发器应该能做到这一点。

代码语言:javascript
复制
create or replace trigger my_trigger
  before update on my_table
  for each row
begin
   -- Only compare the date part  (trunc removes the time)
   if trunc(:old.mydate)!=trunc(sysdate)
   then raise_application_error(-20000,'Updates only allowed on the day of entry');
   end if;
end;

当然,在午夜之前添加的条目编辑时间非常短。此外,您应该以某种方式禁用更新mydate字段的可能性。触发器中会有一些额外的线来处理这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31382729

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档