如何浏览SQL数据库中的数据,包括外部表?

如何浏览SQL数据库中的数据,包括外部表?,sql,sql-server,ssms,Sql,Sql Server,Ssms,我想知道是否存在任何工具来探索关系数据库中的数据,以及钻取主-细节关系 我已经知道如何查看单个表中的数据,并且知道如何构造连接表的SQL查询。然而,要深入到N级,我必须编写一条SQL语句,找到我感兴趣的项的ID,然后重复N次。这是非常乏味和难以想象的结果 但是,我想知道是否有一个工具可以让我查看表中的数据,如果有外键,可以让我展开数据以显示外部数据。希望,让我钻研多个层次的细节 有这样的工具吗 我正在使用MS SQL,并使用SQL Server Management Studio执行SQL。会有

我想知道是否存在任何工具来探索关系数据库中的数据,以及钻取主-细节关系

我已经知道如何查看单个表中的数据,并且知道如何构造连接表的SQL查询。然而,要深入到N级,我必须编写一条SQL语句,找到我感兴趣的项的ID,然后重复N次。这是非常乏味和难以想象的结果

但是,我想知道是否有一个工具可以让我查看表中的数据,如果有外键,可以让我展开数据以显示外部数据。希望,让我钻研多个层次的细节

有这样的工具吗


我正在使用MS SQL,并使用SQL Server Management Studio执行SQL。

会有帮助吗?或者使用视图的可视部分?

有关键和表信息的信息可以通过sysobjects和其他sys表访问,我看到一些自定义脚本能够读取这些表以提供您在此处查找的一些信息,尽管单击向下钻取功能远远超出了这个范围。我认为TOAD(用于oracle应用程序开发人员的工具)可能在这条路线上有一些选择(尽管可能不是免费版本)

这听起来就像你在寻找一个仪表板设置,它将可视化,并允许你点击和向下钻取结果。我不确定是否有免费软件可以实现这一功能,尽管诸如BusinessObjects、microstrategy和其他一些工具可以为您提供(我认为)您需要的东西。可能会很贵,而且可能需要相当长的时间来实施,等待您的设置…这就是我得到报酬的原因;)

为了回应Beth,您可以使用INS MSSQL创建图表……假设设置了正确的键和关系,它将为您提供有关表之间关系的详细信息和想法

编辑添加:对这部分问题的另一个评论:我已经知道如何查看单个表中的数据,并且知道如何构造连接表的SQL查询。然而,要深入到N级,我必须编写一条SQL语句,找到我感兴趣的项的ID,然后重复N次。这是非常乏味和难以想象的结果

我将嵌套我的查询(这只是一种故障排除技术,您不敢尝试在生产中实现类似的功能)


如果您希望在最后返回超过5或10行,我真的不会使用这种技术……但它将节省一些繁琐的run one语句,并将结果复制到您正在进行的下一项工作中

图表几乎正是我想要的——但图表只显示了模式。我想要一张显示数据的图表!谢谢你的建议!我研究了微软SQL的TOAD,付费版本有一个叫做“Master Details Browser”的功能,这与我正在寻找的功能非常接近。唯一的限制是,它要求您在查看数据之前创建表和关系的图表。我希望我可以在浏览数据的过程中随时加入任何表。列出的任何工具都需要相同的功能。有太多的方法来建立一个数据库,以实现任何给定的结果,让一个程序像这样在运行中组合在一起。数据库只是一个结构和其中的数据,如何使用这些数据的逻辑超出了这个范围。有很多方法可以做同样的事情……你所寻找的值甚至可以计算出来,而不是直接存储。我见过一个电信数据库将电路存储在一个表中,所有表都有5层…这意味着该表连接到自身5次以创建一个电路。没有一个程序能从逻辑上找出这个,顺便说一句,如果有一个程序能做到这一点,请不要发布它……我想我会失业;)嗯,我意识到一个程序不能自动建立所有的连接,但我想我正在想象一个让我“引导”它建立连接的程序。用GUI可视化数据的东西。蟾蜍是迄今为止我最接近的答案。即使是免费版本也有帮助,因为它的intellisense可以根据外键约束自动加入表。它节省了我大量的打字时间!我知道它本身不是一个工具,但有一些很好的脚本用于探索数据库结构,包括一些用于探索外键的脚本。
 select * from finaltable where ID in 
    (select id2 for table2 where anotheridcolumn in 
    (select id3 from yetanothertable where yet anotheridcolumn in (input_id_you're_looking_for)