当前位置: 首页 > 面试题库 >

如何查看表或列的所有外键?

谭翔
2023-03-14
问题内容

在MySQL中,如何获取指向特定表的所有外键约束的列表?特定的列?这与该Oracle问题相同,但适用于MySQL。


问题答案:

对于表:

SELECT 
  TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME
FROM
  INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE
  REFERENCED_TABLE_SCHEMA = '<database>' AND
  REFERENCED_TABLE_NAME = '<table>';

对于列:

SELECT 
  TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME
FROM
  INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE
  REFERENCED_TABLE_SCHEMA = '<database>' AND
  REFERENCED_TABLE_NAME = '<table>' AND
  REFERENCED_COLUMN_NAME = '<column>';

基本上,我们在where子句中将REFERENCED_TABLE_NAME更改为REFERENCED_COLUMN_NAME。



 类似资料:
  • 问题内容: 如何查看“反向”正在查看的当前urlpattern? 我在观点中以我认为应该起作用的观点调用反向,但是没有作用。以任何方式我可以检查其中的内容以及为什么没有显示我的图案? 问题答案: 如果要获取项目中所有URL的列表,首先需要安装django-extensions,将其添加到您的设置中,如下所示: 然后,在终端中运行此命令

  • 问题内容: 如何选择表中除一列以外的所有列? 我有将近259列,我不能在声明中提及258列。 还有其他方法吗? 问题答案: 您可以使用这种方法从除以下以外的所有列中获取数据:- 将所有数据插入临时表 然后从临时表中删除不需要的列 从临时表中获取数据(这将不包含已删除列的数据) 删除临时表 像这样的东西:

  • 是否有路线列表/视图(图形化)所有在亚马逊上创建的资源?数据库的所有用户、池等。 我能想到的最好方法是运行每个cli

  • 我知道如何查看Android Studio项目中的所有依赖项,但它没有显示哪些库需要哪些。他们只是全部分组在一起。是否有一种方法可以查看我在build.gradle文件中声明的每个特定依赖项需要哪些库?

  • Navicat 提供三种在主窗口查看对象的类型。在默认情况下,Navicat 在对象列表窗格使用 列表 查看。它只显示对象的名字。你可以从主菜单选择 查看 -> 列表 或在右下角点击 。 详细信息 查看以列显示数个对象的属性。要改变到详细信息查看,从主菜单选择 查看 -> 详细信息 或在右下角点击 。 要改变显示属性的列,从主菜单选择 查看 -> 选择列 并在弹出窗口为不同的对象选择显示的列。 除

  • 问题内容: 我需要在SQL Server数据库中删除一个高度引用的表。我如何获取要删除表需要删除的所有外键约束的列表? (与在Management Studio的GUI中单击相比,SQL回答更可取。) 问题答案: 不知道为什么没有人建议,但是我用来查询给定表的外键: 您还可以指定架构: 在未指定架构的情况下,文档规定以下内容: 如果未指定pktable_owner,则适用基础DBMS的默认表可见性