Oracle(解锁数据库,自增id,触发器,DBLink创建.....)

1.解锁数据库用户账号
jac_pcl_zs:是数据库用户。
alter user jac_pcl_zs account unlock;
2.例如想要,给oracle里面的一个表:v_tool,在插入的时候不写id,id会自动生成并增长。操作如下:

--先创建序列
create sequence wseq_v_tool
increment by 1
start with 1
nomaxvalue
nocycle
nocache

--再创建触发器
create or replace trigger v_tool
  before insert on v_tool  
  for each row 
  when (new.id is null)
declare
  -- local variables here
begin
  select wseq_v_tool.nextval into :new.id from dual;
end v_tool;

3.创建新的oracle数据库用户,并且只给他某些表的查看权限

首先:创建用户

create user test  identified by test123;
创建test用户,密码设置为test123

然后:授权test用户的连接、资源权限。

grant connect,resource to test;

然后:指定表授权查询权限。

grant select on user.tablename to test;

这里有个重点,如果数据库有多用户分别控制不同的表,那么在指定表时一定要在表前面加上用户名。
如果是更多的表建立权限控制,那么就执行多条针对表的权限赋予语句。

最后:验证环节
用新建登录数据库进行验证,我们首先来试试delete删除数据的功能,结果报错无法执行,说明我们添加的用户没有删除权限。
再来验证select查询功能,顺利查找到指定数据。新建用户并指定查询权限功能实现。同时查询没有赋权限的表,同样被拒。

delete insert update 的权限也是一样的赋予方式。

3.DBLink创建的目的是为了能够在当前用户下,访问不同用户以及数据库下面的表。
在这里插入图片描述

注释:

所有者:指代的是你这个DBLink属于哪一个数据库用户下,
名称:即是,你这个DBLink的名字叫啥
连接到:中的用户名跟密码,即是你要访问的数据库用户名,以及密码。

猜你喜欢

转载自blog.csdn.net/weixin_42258334/article/details/121371311