visual-studio - 如何使用不同的 SQL 数据库处理多个客户
问题描述
概括
我有一个包含多个现有 MSSQL 数据库的项目,我已经创建了一个 Azure 分析服务,并在其中部署了我的第一个表格多维数据集。我已经测试过访问分析服务,效果很好。最后,我必须为约 90 个数据库(90 个不同的客户)复制上述内容。我不确定如何组织这个项目,也不确定我拥有的可能性。
我做了什么
我已经浏览了互联网以查找一些信息,但我只是找到了一个来源,有人问过类似的问题,第一个回复是我已经在考虑的,如下所述。最后一个回复我不是很明白,他的一个解决方案是什么意思,项目之上是否还有另一个层次结构?
问题
一种可能性是将每个数据库作为源导入同一个项目,但我认为这意味着我必须从这个源导入每个表,意味着最终 5*90 = 450 个表,我认为这很快就会失控?
我还考虑为每个客户复制整个 Visual Studio Project 文件夹约 90 次,但目前我找不到所有更改名称的参考,但我认为这不会很难。
有没有更简单的方法来实现我的目标?特别是关于可维护性。
解决方案
我将使用所有需要的表创建一个全新的数据库。在这些表中,我使用新列 customerId 从所有客户那里复制数据库。我将使用循环作业传输的数据,要定义周期性。我使用触发器处理的客户数据库中现有行的更新。
解决方案
只需为所有客户使用一个数据库,并使用 customer_id 列区分每个客户。
推荐阅读
- java - 为什么即使我删除了可执行的 .jar,Java 程序仍会继续运行?
- python - 为什么无论输入什么, input() 都会返回不同的对象 ID?
- php - mysqli_query 单个查询生成 PHP 致命错误:允许的内存大小已用尽
- java - 使用arraylist中的运算符组合获取目标数
- android - 错误:“只允许 Kotlin 标准库使用 'kotlin' 包”
- c - 有效地将随机字节转换为字符串,而不会损失太多熵
- javascript - 使用 jQuery 将 Div 值的行转换为数组
- c++ - 为什么没有为函数参数省略副本
- python - 如何在python中进行嵌套循环
- javascript - Angular 4-将文本区域拖放到画布上的任何位置