0

通常,我会像这样对 A 列的数据类型进行相对复杂的更改:

  • 创建新数据类型的 B 列
  • 设置 B 以包含从 A 派生的新值
  • 掉落 A
  • 将 B 重命名为 A

为了保证我的数据模型的有效性,我想在单个事务中执行这种重组。到目前为止,我还不能这样做,因为根据隔离级别,要么 B 不被认为存在,要么我不允许重命名 B(“更新与并发更新冲突”),或者没有发生错误,但 B 为空。是否可以按照我的要求执行 - 我很想看看如何 - 还是绝对需要COMMIT介于两者之间?

4

1 回答 1

3

在使用显然更合适的搜索词(元数据)以及通过 de Firebird 支持小组进行搜索后,我发现这显然是不可能的。解决方法是逐步进行迁移并将其与备份结合起来(绝不是一个坏主意)。

于 2013-03-24T13:49:47.400 回答