gpt4 book ai didi

azure - 您知道有一个带有 GUI 的工具可以在 SQL Azure Federation 中编辑数据吗?

转载 作者:行者123 更新时间:2023-12-02 16:57:17 26 4
gpt4 key购买 nike

我正在将应用程序迁移到 SQL Azure 联合,并且我希望在不使用 SQL 的情况下查看和编辑表内容(仅用于测试)。

通过标准 SQL 数据库(SQL Server 或 SQL Azure),我可以使用其中之一:

  • 使用 Management Studio (SSMS) 查看和编辑数据:右键单击表格 > 编辑前 xx 行。

  • Visual Studio:在服务器资源管理器中,我连接到数据库,右键单击表,然后单击“显示表数据”。

当然,这不适用于 SQL Azure 联合。您知道一个免费(如果可能的话)的工具(即使是简单的)可以在联盟成员中编辑我的数据吗?

最佳答案

顺便说一句,当连接到 SQL Azure 数据库时,您无法使用 SSMS 中的Edit top xxx rows。此选项已禁用(它甚至未在上下文菜单中列出)。

但是它可以与 Visual Studio (Visual Studio 2012 SQL Server Explorer) 一起使用。这很有趣。

它也适用于联盟。您的联盟成员实际上是一个单独的数据库,具有一些奇怪的生成名称。使用 VS SQL Server Explorer 连接到 SQL Azure Server。然后,当您列出树中的所有数据库时,您将在联合根旁边看到其他数据库:

SQL Azure Federations

现在您唯一要做的就是知道哪个 system-xxxxx 数据库对应于哪个联盟成员。您可以从that article找到这个。以下查询可能会有所帮助:

-- Route connection to the federation root
USE FEDERATION ROOT WITH RESET
GO
-- View the federation root metadata
SELECT db_name() [db_name]
SELECT * FROM sys.federations
SELECT * FROM sys.federation_distributions
SELECT * FROM sys.federation_member_distributions ORDER BY federation_id, range_low;
GO

当您只有一个联盟且只有一名联盟成员时,您的任务相当容易完成(因为您只有一个 system-xxx-xxx-x DB)。但一旦 split ,您就会想找出您需要与哪个确切的联邦成员数据库进行对话。

更新

有一种可靠的方法可以获取特定联盟成员的确切数据库名称。您必须连接到要在其中编辑数据的联盟成员。例如,如果我们的联盟名为 MyFirstFederation 且联盟分发 key 名称为 FederationKey,并且我们想要连接对于联邦 key 值为10000的数据的联邦成员,我们执行:

USE FEDERATION MyFirstFederation(FederationKey = 10000) WITH RESET
GO

在相同的上下文中我们执行:

SELECT * FROM sys.databases
GO

这将列出mastersystem-xxxx-yyy-zzz。其中前者将是保存 FederationKey 值为 10000 的成员的确切数据库(以及该特定联盟成员范围内的所有其他内容)。

现在我们知道了要在 Visual Studio 2012 SQL Server Explorer 中选择的数据库的确切名称,并且能够直观地编辑内容。虽然它有点慢,但它是您需要的 GUI 工具。

关于azure - 您知道有一个带有 GUI 的工具可以在 SQL Azure Federation 中编辑数据吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13885526/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com