Edw*_*win 1 database sybase primary-key
我正处于这样一种情况:我们将推出一个新版本的软件,它将使用一个独立的数据库(模式中的重大变化).将会有相当长的一段时间,新系统和旧系统都将投入生产,我们需要确保在两个数据库之间生成唯一ID(我们不希望在数据库A中有一行)与数据库B中的行具有相同的ID.数据库是Sybase.
我想出的可能的解决方案:
我还能做什么?是否有更优雅的解决方案,两个数据库一起工作?我相信这两个数据库将在同一台服务器上,如果这很重要的话.
在这种情况下,GUID或全局唯一ID可以是方便的主键.我相信Sybase支持他们.
编辑:虽然如果你的整个数据库已经基于整数主键,那么切换到GUID可能不太实际 - 在这种情况下,只需对数据库之间的整数空间进行分区,就像GWLlosa和其他人所建议的那样.
我已经看过几次了.在我参与的那些中,我们只是为旧的ID空间分配了一个足够大的ID空间(因为它已经运行了一段时间,我们知道它使用了多少个键,我们可以计算出它有多少个键'需要一个指定的'寿命')并启动上面新数据库的"ID SEQUENCE".
我会建议不要使用任何其他技巧,只是因为它们都需要更改"遗留"应用程序,这是一种我认为不需要采取的风险.
| 归档时间: |
|
| 查看次数: |
191 次 |
| 最近记录: |