问题标签 [cross-database]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql-server - SQL Server 跨数据库复制数据
我正在使用 SQL Server 2019。我有一个向 GUI 应用程序公开的“MasterDB”数据库。我还将拥有多达 40 个用户数据库,例如“User1DB”、“User2DB”等。所有这些用户数据库都将具有“完全相同”的模式和表。
我需要将表数据(覆盖目标)从一个用户数据库(比如“User1DB”)复制到另一个(比如“User2DB”)。我需要从“MasterDB”数据库中执行此操作,因为 GUI 客户端应用程序只能访问此数据库。如何处理这种动态情况?我更喜欢静态 SQL(以存储过程的形式)而不是动态 SQL。
任何建议将不胜感激。谢谢。
azure - Azure Synapse、Azure SQL 数据库、Azure 托管实例和本地 SQL Server 中的跨数据库查询
我们正在寻找将我们的本地 SQL Server 迁移到 Azure 的选项,并试图了解我们是否能够运行跨数据库查询,如果我们的数据驻留在 Azure 中的多种数据库技术(特别是 Azure 托管实例、Azure Synapse Analytics、Azure SQL 数据库)和本地 SQL Server 实例中。
我们在任何地方都找不到太多关于这些是否受支持的信息,如果你们中的任何人可以帮助填写下表,我们将不胜感激:
到-> | Azure SQL 数据库 | Azure 托管实例 | Azure 突触分析 | 本地 SQL Server |
---|---|---|---|---|
Azure SQL 数据库 | 通过弹性搜索查询支持(参考:https ://azure.microsoft.com/en-us/blog/querying-remote-databases-in-azure-sql-db/ ) | ? | Azure 数据共享支持从 Azure SQL 数据库和 Azure Synapse Analytics(以前称为 Azure SQL DW)共享表和视图,以及从 Azure Synapse Analytics(工作区)专用 SQL 池共享表。当前不支持从 Azure Synapse Analytics(工作区)无服务器 SQL 池共享。(参考:https ://docs.microsoft.com/en-us/azure/data-share/how-to-share-from-sql ) | Azure SQL 数据库不支持链接服务器属性,因此您将无法访问 Azure SQL 数据库中的 prem 表,并且 Azure SQL 数据库中的弹性查询是查询 2 个 Azure SQL 数据库之间的表,而不是 On prem。(参考:https ://docs.microsoft.com/en-us/answers/questions/289105/how-can-i-query-on-premise-sql-server-database-fro.html ) |
Azure 托管实例 | ? | ? | ? | 可通过使用链接服务器获得(参考:http ://thewindowsupdate.com/2019/03/22/lesson-learned-81-how-to-create-a-linked-server-from-azure-sql-managed- instance-to-sql-server-onpremise-or-azure-vm/ ) |
Azure 突触分析 | ? | ? | ? | ? |
本地 SQL Server | ? | ? | ? | 使用链接服务器,您可以从本地 SQL Server 查询 Azure SQL 数据库中的数据(参考:https ://docs.microsoft.com/en-us/answers/questions/289105/how-can-i-query-本地 sql-server-database-fro.html ) |
php - laravel 跨数据库事务问题
我想在 Laravel 中跨数据库事务,我在 DB 中使用了连接,但它无法正常工作,它给出了一个错误,如(一般错误:1205 Lock wait timeout exceeded; try restarting transaction)
sql - TSQL Cross Apply 确定要查询的数据库
我正在(在 .NET 中)编写一个登录屏幕,允许登录连接到 SQL Server。一旦他们输入了服务器名称和他们的凭据,它就会显示一个数据库列表供他们连接,但是,数据库需要具有正确的结构。这将在每个数据库中通过一个ref.Config
表的存在以及该表中具有适当值的行来标识。服务器上可能有一大堆其他数据库用于其他目的。我在设计时不知道。
理想情况下,我想做的是这样的:
Wherem.name
被评估后被替换到子查询中(我知道上面不是有效的 SQL)。有没有办法做到这一点,还是我必须在每个数据库上运行一个查询?此时我无法在服务器上拥有存储过程。理想情况下,我只需要一条 SQL 语句,它会返回符合我期望的结构的所有数据库的名称。
sql - 在代码中没有提到其他数据库的情况下触发从其他数据库获取数据?如何?
我有一个触发器,它驻留在SALES
表上的数据库中COMMISSIONS
。插入数据时,该字段RESPONSIBLE
将填写进行销售的销售人员的姓名。更新/插入后,触发器检查当前登录用户是否在PERSONNEL
表中的数据库(同一服务器)中有记录EMPLOYEES
就像是
我不明白的是:表 EMPLOYEES 与触发器位于不同的数据库中。这个触发器如何知道它应该在数据库中查找PERSONNEL
?
写这段代码的人走了。
sql-server - 跨数据库视图的替代方案
我有许多表我希望用索引视图查询,但这些表分布在 3 个不同的数据库中,但它们都在同一台服务器上。
该文件指出...
视图必须仅引用与视图位于同一数据库中的基表。
This SO answer指出这实际上是可能的,并使用三部分表命名来解释。
如果 Microsoft 文档是正确的(我怀疑它是正确的!)我还有其他选择吗?
我希望使用视图的原因是因为正在使用的查询有点慢(相对;它已经被优化了很多),我相信索引(物化)视图 可以帮助提高性能。
sql - Sql Azure - 跨数据库查询
我有 N 个数据库,例如 10 个数据库。每个数据库都有相同的架构,但数据不同。现在,我想从表“ Table1 ”中获取每个数据库的每个数据,并将它们插入到名为Table1Common的表中的新数据库“DWHDatabase”中的公用表中。
所以它是一个像 n 到 1 的插入。我该怎么做?我正在尝试用弹性查询解决我的问题,但似乎这是一对一的事情
sql-server - 无法在 Azure SQL 跨数据库查询中按日期时间类型进行筛选
在 Azure SQL 数据库中,我们使用外部表从另一个 Azure SQL 数据库中查询数据。按 DATETIME 列过滤外部表时,如果毫秒的最后一位是 3 或 7,则不返回任何行。如果最后一位是 0,则查询按预期工作。
例子:
笔记:
- 只有参数化的查询受到影响。在 where 子句中硬编码日期时间值的任何查询都按预期工作。
- 只有跨数据库查询受到影响。直接在源数据库上运行查询按预期工作。
- 我们的代码多年来一直按预期工作,上周才开始出现这种行为。
- 这仅在我们的测试和生产环境中发生。我们的开发环境对所有日期时间值都按预期工作。
重现步骤:
amazon-web-services - 在 redshift 中执行跨数据库联合查询是否可行?
虽然跨数据库查询(在基于 ra3 节点的集群中)和联合查询单独似乎可以工作,但它们似乎一起不起作用。我很可能遗漏了一些东西,因此提出了这个问题。以下是详细信息:
- RDS Aurora MySQL 有一个数据库,比如 DB1
- Redshift集群说c1有数据库说RSDB1和RSDB2
- 我能够将 DB1 配置为 RSDB1 中的外部模式,比如 ext_mdb 并且能够查询例如:如下
从 ext_mdb.Table2 中选择 count(1);
从 RSDB1.ext_mdb.Table2 中选择 count(1);# 这也有效
- 当我连接到 RSDB2 时,我还可以使用跨数据库查询模式 RSDB1.public.Table1。
- 当我尝试从 RSDB2 查询 RSDB1.ext_mdb.Table2 失败并出现以下错误
从 RSDB1.ext_mdb.Table2 中选择 count(1);# 这不是来自 RSDB2
错误:数据库中不存在关系表 2。
sql-server - 从一个 Azure SQL Server 到另一个 Azure SQL Server 执行 UPDATE/INSERT 语句
我有两个不同的 Azure SQL Server (A & B)。我想在 SQL Server A 上执行一个存储过程,它会生成一个由行组成的结果集,这些行必须是 UPDATED。
我可以在 SQL Server A 中更新这些行,但我也想在 SQL Server B 中更新相同的行(服务器 A 和 B 为这些行共享相同的键)。但是,我想从 SQL Server A 向 SQL Server B 执行 UPDATE 语句。换句话说,我不想为此使用数据迁移工具。
这是否可以对 Azure SQL Server 使用某种跨服务器连接方法?所以我可以从 SQL Server A 的查询窗口更新 SQL Server B 中的数据吗?