0

我有多个 CSV。它们都是从关系数据库中导出的。现在每个 CSV 包含数千个条目,以及对其他 CSV 文件表示的其他表的引用。

如何将这些文件导入新数据库?我应该创建一个新模型吗?

4

2 回答 2

1

尽管一些 DBMS 会从导入的数据中推断(或尝试)模式,但将模式与数据加载本身分开处理可能更安全。

如果 CSV 文件来自的数据库仍然可以访问,您可以请求导出 SQL DDL 脚本,该脚本可用于重新创建相同的 SQL 对象(表、索引...别处)。即使您计划更改架构中的一些内容,这也可以让您在新主机上启动架构。

如果没有这样的模式可用,您可能需要通过单独导入这些表(或仅检查 CSV txt)来重新发现原始模式。作为提示,较小的表可能是首先加载的表,因为它们通常是查找表,或行数较少的“标题”表,它们是与较大表相关的表。

于 2009-11-17T23:36:39.680 回答
0

如果没有循环依赖(表 A 引用 B 和 B 引用 A),则按依赖顺序组织它们并按该顺序导入它们。第一个表将是其他表所依赖的表,但它不依赖于其他表。

如果您有循环依赖关系,则必须在导入所有数据时临时禁用数据库中的引用完整性检查,然后重新启用它。Oracle可以做到这一点,但我不知道MSSQL和MySQL。

于 2009-11-17T23:32:00.777 回答