📜  列出外键 oracle - SQL (1)

📅  最后修改于: 2023-12-03 15:07:10.582000             🧑  作者: Mango

列出外键 Oracle - SQL

在Oracle中,外键是指在一个表中引用另一个表的键。在创建外键时,需要指定主键和外键之间的关系。外键可以帮助我们保持数据的完整性,并且可以自动执行一些特定的操作,比如级联删除。

以下是列出外键的SQL语句:

SELECT
    uc.constraint_name AS constraint_name,
    uc.table_name AS table_name,
    cols.column_name AS column_name,
    r_cols.table_name AS referenced_table_name,
    r_cols.column_name AS referenced_column_name
FROM
    user_constraints uc
JOIN
    user_cons_columns cols ON cols.constraint_name = uc.constraint_name
JOIN
    user_cons_columns r_cols ON r_cols.constraint_name = uc.r_constraint_name
WHERE
    uc.constraint_type = 'R';

该SQL语句将返回一个结果集,其中包含了每个外键的名称、所在表、所引用的表、引用列的名称等信息。我们可以根据自己的需要对结果集进行进一步的筛选和处理。

在上述SQL语句中,我们使用了Oracle系统表user_constraintsuser_cons_columns来查询外键的信息。这些表中包含了Oracle数据库中所有的约束信息,包括主键、外键、检查约束等。

如果想要查看所有的外键,不需要指定任何其他参数。如果只想查看特定表的外键,可以在WHERE子句中加入对应的表名。

在使用该SQL语句前需要确保当前用户对相关系统表有查询权限。