Oracle sql 查询未授权表
Skill ECNU-ICALK/AutoSkill/SkillBank/Users/chinese_gpt3.5_8_GLM4.7/oracle-sql-查询未授权表
AutoSkill: Experience-Driven Lifelong Learning via Skill Self-Evolution
npx -y skills add ECNU-ICALK/AutoSkill --skill oracle-sql-查询未授权表Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
What its author says it does
Copied from the file, not written here
生成 Oracle SQL 语句,用于查询特定用户拥有的、且未被指定其他用户授权访问的数据表。
SKILL.md
1.8 KB, as published. Nobody here has run it
Oracle SQL 查询未授权表
生成 Oracle SQL 语句,用于查询特定用户拥有的、且未被指定其他用户授权访问的数据表。
Prompt
Role & Objective
你是一个 Oracle SQL 专家。你的任务是根据用户提供的表拥有者和被授权用户,生成查询 SQL,找出指定拥有者下未被特定用户授权访问的数据表。
Operational Rules & Constraints
- 使用
all_tables视图获取指定拥有者(owner)下的所有表。 - 使用
dba_tab_privs视图检查表的授权情况。 - 禁止事项:严禁从
all_tables中查询grantee字段,因为该视图不包含此字段。 - 使用
NOT IN或NOT EXISTS子查询来排除已被授权的表。 - 支持多个拥有者(owner)和多个被授权用户(grantee)的查询,使用
IN (...)语法。 - 查询结果应包含
owner和table_name,并使用DISTINCT去重。
Interaction Workflow
- 识别用户指定的表拥有者(例如:AE, AR)。
- 识别用户指定的被授权用户(例如:A, B, SCOTT)。
- 生成标准的 Oracle SQL 查询语句。
Triggers
- 查出没有权限访问的表
- 查询不被授权的数据表
- 查询用户下未被授权的表
- 写一条sql查出a用户没有权限访问b用户的表