Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 使用外键在我的数据库中使用另一个数据库的(凌乱的)数据_Sql_Database_Data Transfer_Sql Server 2017 - Fatal编程技术网

Sql 使用外键在我的数据库中使用另一个数据库的(凌乱的)数据

Sql 使用外键在我的数据库中使用另一个数据库的(凌乱的)数据,sql,database,data-transfer,sql-server-2017,Sql,Database,Data Transfer,Sql Server 2017,我有一个高效的数据库,具有干净的主键/外键结构。它设计得很好,我想保持这样 我现在需要集成来自另一个数据库的数据。这个数据库来自不同的应用程序,非常混乱。没有惯例,没有清晰的外键结构,这真是一团糟。但是,我需要的数据由另一个应用程序管理,我需要至少每天更新数据 我找到的最简单的解决方案是:创建自己的表,每天运行导入脚本。导入数据之前=>截断我的表 然而,这不起作用,因为我会用截断杀死所有外键引用 我想到的另一个解决方案如下: 每天进行一次导入,然后更新/删除/插入(新)数据 这可能会变得非常棘手

我有一个高效的数据库,具有干净的主键/外键结构。它设计得很好,我想保持这样

我现在需要集成来自另一个数据库的数据。这个数据库来自不同的应用程序,非常混乱。没有惯例,没有清晰的外键结构,这真是一团糟。但是,我需要的数据由另一个应用程序管理,我需要至少每天更新数据

我找到的最简单的解决方案是:创建自己的表,每天运行导入脚本。导入数据之前=>截断我的表

然而,这不起作用,因为我会用截断杀死所有外键引用

我想到的另一个解决方案如下:

每天进行一次导入,然后更新/删除/插入(新)数据

这可能会变得非常棘手,因为缺少主键,我可能会失去数据记录的跟踪,并将其作为新数据插入,而不是更新旧数据集

我想我不是第一个遇到这种问题的人——但不幸的是,我在谷歌上找不到任何好的建议。这就是为什么我想写这篇文章

有没有其他我目前看不到的有用方法?还有其他建议吗