专业编程教程与实战项目分享平台

网站首页 > 技术文章 正文

数据库笔试面试110——在Oracle中,关于AUTHID

ins518 2024-11-02 12:51:04 技术文章 10 ℃ 0 评论

下列关于AUTHID的说法哪些是正确的?()

A、AUTHID子句是用于指定哪些用户被授权执行一个程序单元

B、从Oracle 11gR1开始,所有的程序单元都必须指明AUTHID属性

C、一个PL/SQL程序的AUTHID属性会影响该程序在运行的时候发出的SQL语句所涉及的名字解析和权限检查

D、AUTHID属性可以在包头(Package Specification)和对象类型的头部(Object Type Specification)指定,但不能够在包体(Package Body)和类型体(Object Type Body)指定

答案:C、D。

本题中,对于选项A,AUTHID子句是用于指定一个程序单元是运行于“调用者权限”(AUTHID CURRENT_USER)还是“定义者权限”(AUTHID DEFINER)。所以,选项A错误。

对于选项B,AUTHID子句是可选的,缺省设置为AUTHID DEFINER。所以,选项B错误。

对于选项C,实际上这就是Oracle文档中关于AUTHID的定义。所以,选项C正确。

对于选项D,AUTHID可以在CREATE FUNCTION、CREATE PACKAGE、CREATE PROCEDURE、CREATE TYPE和ALTER TYPE中包含。但不能在CREATE PACKAGE BODY或者CREATE TYPE BODY中包含AUTHID。所以,选项C正确。

所以,本题的答案为C、D。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表