在数据库中复制表

Replicating tables within the database

我 table A、B 和 C 的数据相似,但结构不同。我需要从我的程序(Java,在这种情况下)访问数据,我正在考虑有一个小型 ETL 过程,它将 运行 每天从这三个 table 复制数据s 进入一个新的 table D(我的程序将使用单个 table 结构访问它)。这种做法正确吗?

如果您可以通过单个查询填充 D,然后使用该查询返回一个视图,您就完成了(我很确定最流行的 sql 服务器不允许,比如说,过程支持观看次数)。

否则,是的,您将拥有一些将数据从 a、b、c 转换为 d 的过程。这可以通过存储过程(可能使用触发器)或外部作业。

如果您确实需要您的程序访问单个table结构。但是仔细检查你需要这个的原因。将复杂性从客户端转移到数据模型可能并不是每次都是最佳解决方案。