从 2 个不同的 df 文件创建增量 df 文件

Creating incremental df file from 2 different df files

有没有一种方法可以从 2 个不同的 .df 文件创建一个增量 .df 文件?或者我是否必须将这两个文件加载到 2 个空白数据库中,然后使用数据管理工具中的创建增量 .df 文件功能?

我正在使用 Openedge 10.2B08

数据定义 (.df) 文件是要在数据库中添加、删除或更新的内容的列表。它是纯文本格式,因此您可以在文本编辑器中查看它。您可以将一个 .df 文件的内容剪切并粘贴到另一个文件中。但是,如果两个文件的更改发生冲突,您可能 运行 会遇到问题。例如,文件 1 可能会说要删除字段 xyz,而文件 2 会说要更新字段 xyz。这将导致错误并且整个 .df 将被回退。

如果您确定没有冲突,只需将文件 2 的内容粘贴到文件 1 中,就在页脚上方。页脚是文件中的最后五行:

.
PSC
cpstream=ISO8859-1
.
0000000610

最后一行是字符数。如果您不更新新的 .df 以匹配新的文件长度,您可能无法加载新的 .df。并确保在生产中尝试之前测试 .df。

在我看来,将它们都加载到一个空白数据库中然后转储一个可靠的 DF 仍然是最好的解决方案。

当然,您可以通过将一个文件附加到另一个文件来节省几分钟时间,我认为您甚至可以删除页脚而不必费心,它应该可以工作。

与一切一样,这取决于情况的关键方面。您是否在关注生产数据库的重要停机时间?通常,对于将应用于生产的任何内容,都不应该有太大的妥协。可靠的 DF 比 "hacked 99.9% safe" 更好。这就是好 Dba 和坏 Dba 之间的区别。十年后,好的可能似乎工作得慢一点。但是在那个十年里,一旦坏事最终会给企业带来一些关键的停机时间……完全抵消了他可能看起来拥有的愚蠢的生产力优势。

在过去的 15 年里,我纠正了无数错误,我犯了一个错误。这不是一种有趣的感觉。星期一一大早就被一个惊慌失措的服务台人员叫醒,他描述了这个问题。很快意识到这与我之前进行的夜间维护有关。回复让所有用户退出,全国范围内停止,而我正试图找出问题所在以及如何解决它。 2500 名员工正在领薪水,但无法工作……他们面前的客户有钱可以花,没有时间可以浪费。

我花了 3 个小时。这不是一个懒惰的错误......只是一个错误,在进行通常的 post-update 快速测试以确保它运行正常时没有简单的方法可以注意到。我们有针对训练数据库的 Gui 代码 运行 代码,同时在 Unix 和生产环境上执行通常的业务逻辑。

不需要数学天才就能计算出一个愚蠢的 DBA 错误每隔几分钟造成的损失超过他的年薪。

错误时有发生,但是伙计们,如果几分钟的额外工作是错误的根本原因,恐怕是时候让位给其他人了。没什么可耻的,这只是一份需要这种心态的工作,有些人需要几十年的时间才能最终措手不及并意识到这一点。花费宝贵的时间三次检查 99.9% 的安全更新是一件很有趣的事情……没有人会注意到下周一的额外工作,因为它会像往常一样工作。如果它不起作用,每个人都会大喊大叫,不管是不是你的错。

我的数百万错误一旦解决就再也没有人提起过。每个人都非常清楚,我可以计算损失的现金,而且在我的整个职业生涯中,我从来没有以任何理由偷工减料。这仍然只是钱......我现在可以接受几年后差点杀死 2 名年轻工人生命的错误。

压力大,时间太多,可以 广告到反射 F1 并杀死在某些自动化设备中工作的机械师。

与那些键盘手保持安全,这是严肃的事情 ;)