Oracle データベースでは、テーブルはデータベース内で最も一般的なオブジェクトの 1 つです。テーブルには大量の重要なデータが保存されるため、テーブル内のデータを保護することが重要です。表へのアクセスを制御するために、Oracle Database には多くのメソッドとツールが用意されています。そのうちの 1 つは、クエリ テーブルに対するクエリ権限です。この記事では、Oracle データベース内のテーブルのクエリ権限をクエリする方法について説明します。
クエリ権限とは、ユーザーまたはロールがテーブルをクエリするための権限を指します。これにより、誰がどのようにテーブルをクエリできるかが決まります。 Oracle データベースでは、クエリ権限を特定のユーザーまたはロールに関連付けることができます。これらの権限には、SELECT 権限およびその他のクエリ権限が含まれます。
Oracle データベースでは、次の方法でクエリ テーブルのクエリ権限をクエリできます。
2.1. SYS .USER_TAB_PRIVS ビューの使用
SYS.USER_TAB_PRIVS ビューには、テーブルクエリ権限を含む、データベースオブジェクトに対するユーザーまたはロールの権限が保存されます。テーブルのクエリ権限をクエリするには、次の SQL ステートメントを使用します。
SELECT * FROM SYS.USER_TAB_PRIVS WHERE TABLE_NAME = 'table_name';
このクエリでは、SYS.USER_TAB_PRIVS WHERE TABLE_NAME = 'table_name';
USER_TAB_PRIVS ビューを使用して、テーブルに対するユーザーまたはロールのすべての権限を取得します。 WHERE 句では、「table_name」を実際のテーブルの名前に置き換えます。
2.2. DBA_TAB_PRIVS ビューの使用
Oracle データベースでは、DBA_TAB_PRIVS ビューにデータベース内のすべてのオブジェクトの権限情報が保存されます。テーブルのクエリ権限をクエリするには、次の SQL ステートメントを使用します:
SELECT * FROM DBA_TAB_PRIVS WHERE OWNER = 'owner_name' AND TABLE_NAME = 'table_name' AND PRIVILEGE = 'SELECT';
Oracle データベースでは、SELECT 権限を付与または取り消すことでテーブル クエリ権限を管理できます。テーブルに対する SELECT 権限を付与するには、次の SQL ステートメントを使用できます。
GRANT SELECT ON table_name TO user_or_role;
このステートメントでは、GRANT ステートメントを使用してユーザーまたはロールを付与します。テーブル権限に対する SELECT。このステートメントでは、「table_name」はテーブルの実際の名前、「user_or_role」は SELECT 権限を付与するユーザーまたはロールです。
テーブルの SELECT 権限を取り消すには、次の SQL ステートメントを使用できます:
REVOKE SELECT ON table_name FROM user_or_role;
以上がOracleクエリテーブルのクエリ権限の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。