0

我正在使用 SQL Server 2019。我有一个向 GUI 应用程序公开的“MasterDB”数据库。我还将拥有多达 40 个用户数据库,例如“User1DB”、“User2DB”等。所有这些用户数据库都将具有“完全相同”的模式和表。

我需要将表数据(覆盖目标)从一个用户数据库(比如“User1DB”)复制到另一个(比如“User2DB”)。我需要从“MasterDB”数据库中执行此操作,因为 GUI 客户端应用程序只能访问此数据库。如何处理这种动态情况?我更喜欢静态 SQL(以存储过程的形式)而不是动态 SQL。

任何建议将不胜感激。谢谢。

4

1 回答 1

0

在此处查看此问题以将数据从一个数据库传输到另一个数据库。

除此之外,我在这里同意@DaleK。如果我们假设用户是正在登录您的前端应用程序的人,那么没有真正的理由为每个用户拥有一个数据库。

如果您正在运行一些数十亿记录的企业应用程序,在该应用程序中,每个客户实际上拥有如此多的数据,因此将其拆分是有意义的,那么我可以在一定程度上理解为每个客户复制您的架构,但根据您的问题,这似乎不是案子。

所以,如果我们的假设是正确的,你只需要一个用户表,你的字段可能在哪里......

UserTable
UserId
FName
LName
EmailAddress
...

编辑:我在评论中看到您指的是“源代码控制数据”......我建议您研究数据库以及它们的设计、实现方式以及数据应该如何处理。通过简单的 Google 搜索,就有大量关于这方面的优秀文章和书籍。

如果您希望复制数据以进行备份,请查看一些数据仓库设计原则,可能会为此在不同的地理区域创建单独的数据存储。后者是一个非常复杂的主题,我无法在此答案中讨论,但听起来这远远超出了您当前的需求。我的建议是回溯并找出应用程序的需求,同时了解数据库的一些基础知识(或不同的数据存储方法)。实现一些东西,然后看看它可以在哪里扩展/重构。

除此之外,我不能比您发布的原始问题更详细。希望这可以帮助。

于 2021-01-28T22:38:14.973 回答