Navicat 博客

2019 年 2 月 26 日,由 Robert Gravelle 撰写

如果你曾尝试在大型数据库中找到特定列,我相信你会同意这是一项艰巨的任务。你可以从 information_schema 模式中收集有关数据库结构的大量信息。它有一个列表包含所有表和表中所有字段。然后,你可以使用从此模式中获取的信息运行查询。涉及的表是 SCHEMATA、TABLES 和 COLUMNS。外键让你可以准确地构建在模式中创建表的方式。

然而,执行数据库范围搜索的更简单方法是使用 Navicat Premium。在非 Essentials 中,Navicat 提供了“在数据库或模式中查找”功能,用于在数据库和/或模式中查找表或视图的数据或对象的结构。在今天的文章中,我们将学习如何使用此功能。

查找列

首先让我们在数据库中查找一列。我们想在 Sakila 示例数据库中查找“release_year”列。以下是我们的步骤:

  • 打开“在数据库或模式中查找”窗口。从菜单栏选择“工具”->“在数据库或模式中查找”。
  • 选择目标的“连接”、“数据库”和/或“模式”。
  • 在“查找字符串”文本框输入搜索字符串。
  • 在“查找范围”下拉式列表中选择“结构”。另一个选项当然是“数据”。
  • 选择“搜索模式”。选项包括“包含”、 “整个字”、 “前缀”或“正则表达式”。
  • 勾选“不区分大小写”框来禁用大小写相关搜索。
  • 由于我们在“查找范围”下拉列表中选择了“结构”,现在我们可以选择搜索不同的对象,包括表,视图,函数,查询和/或事件。

    以下是填写和/或选择了所有字段时的表单:


  • 现在继续,点击“查找”按钮以获取结果。在这种情况下,Navicat 在一个表中找到“release_year”列:



    你可以在“查找结果”列表中双击对象来查看记录或结构。匹配项将高亮显示:

搜索数据

试图在没有搜索工具的情况下在整个数据库中找到给定值几乎是不值得的。在 Navicat 中,我们需要做的就是按照与上面相同的步骤,但这次我们将从“查找范围”下拉菜单中选择“数据”。

这是“搜索模式”下拉列表中选择了“前缀”以及“查找字符串”值为“JOHN”的结果:

如您所见,这种更广的搜索会查找到更多匹配项。

再次双击“查找结果”列表中的对象,记录将在新选项卡中显示:

请注意 Navicat 为获取所需结果而生成的查询。

总结

Navicat 的“在数据库或模式中查找”工具极大地方便了在整个数据库或模式中查找数据或对象结构。information_schema 模式的替代无法与此工具相比。你可以在产品页面了解有关 Navicat Premium 功能的更多信息。

Navicat 文章
频道条目
分享
文章归档