Oracle12C查询自建用户(非系统自带)

本文提供了一个SQL查询示例,用于从数据库中筛选出未继承权限的用户。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 
select username from dba_users where INHERITED='NO';

转载于:https://www.cnblogs.com/liang545621/p/9410710.html

### Oracle 12c 中的批处理作业功能 #### 定义批处理作业 Oracle Database 提供了多种方式来创建和管理批处理作业。DBMS_SCHEDULER 是一个强大的工具,可以用来调度各种类型的作业,包括PL/SQL 块、存储过程调用以及外部脚本执行。 要定义一个新的批处理作业,在 PL/SQL 环境中可以通过 `DBMS_SCHEDULER.CREATE_JOB` 过程完成[^4]: ```sql BEGIN DBMS_SCHEDULER.create_job ( job_name => 'my_batch_job', job_type => 'PLSQL_BLOCK', job_action => 'BEGIN my_procedure(); END;', start_date => SYSTIMESTAMP, repeat_interval => 'FREQ=DAILY; BYHOUR=2; BYMINUTE=0; BYSECOND=0;', -- 每天凌晨两点运行 enabled => TRUE); END; / ``` 此代码片段展示了如何设置每天凌晨两点自动触发名为 `my_batch_job` 的批处理任务,并指定该任务的具体操作为调用 `my_procedure()` 存储过程。 #### 看现有作业状态 为了监控已配置好的批处理作业的状态,可利用视图 `USER_SCHEDULER_JOBS` 或者更详细的 `ALL_SCHEDULER_JOBS` 来获取当前数据库实例中存在的所有计划内工作的列表及其属性信息。 查询语句如下所示: ```sql SELECT JOB_NAME, STATE, NEXT_RUN_DATE FROM USER_SCHEDULER_JOBS WHERE OWNER = USER; ``` 这将返回属于当前用户的每一个作业名称(`JOB_NAME`)连同它们各自所处的状态 (`STATE`) 和下次预计启动时间 (`NEXT_RUN_DATE`)。 #### 修改或删除已有作业 如果需要更改某个已经存在的批处理作业参数,则应该先停止它再做调整;而当不再需要某项特定的任务时可以直接将其移除掉。这些都可以借助于相应的包函数实现: 修改作业: ```sql BEGIN DBMS_SCHEDULER.disable('my_batch_job'); DBMS_SCHEDULER.set_attribute( name => 'my_batch_job', attribute=> 'repeat_interval', value =>'FREQ=WEEKLY; BYDAY=TUE; BYHOUR=8;'); DBMS_SCHEDULER.enable('my_batch_job'); END; / ``` 删除作业: ```sql BEGIN DBMS_SCHEDULER.drop_job(job_name=>'my_batch_job'); END; / ``` 上述例子说明了怎样改变一个周期性的日间工作成为每周二上午八点钟发生的活动,同时也给出了彻底清除无用项目的办法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值