在设计数据库时,大家如何解决ID编号的后续合并的唯一性问题?

ps800 2015-11-01 11:53:04
比如,客户资料表,cus_ID设为自动编号,那么,从1号到1000号,我数据表里有1条客户记录。

当这台服务器发生灾难的时候,那么需要把原来的表,导到一个新的数据库中。而这个新的数据库中,原来就有数据,所以,无法保证cus_id的唯一性了。

即使不是发生灾难,比如,两个公司进行业务合并。那么,客户资料表A,要和客户资料表B合并,那么,cus_id这个字段,原本是唯一的,现在要怎么处理呢?有可能A表和B表都有ID=1,2,3,4,,,,,重复了呀。。。。。。

处理方式上,我认为至少,cus_id原本是自动编号的,现在A表和B表合并,新数据库的时候,肯定不能用自动编号了吧?不是唯一的了。那么,如何识别区分该记录原先来自A还是B呢?

还有,表的关联的问题,我原先是这个cus_id,写入关联的表。到的新的表中,无法关联原来的字段了。在程序上,需要判断,这个数据是来自哪个表,是新数据还是老数据吗?
如果是这样的话,那么,在设计数据表的时候,自动编号的这个字段的意义在哪里呢?

不知道表达清楚没有。

再举个例子,我数据表获取数据的途径有两个,一个是从淘宝上,下载同步(通过API接口)物流公司列表,保存在物流表中。他们自带的有物流公司ID,比如“3232”,这个字段就不能用自动编号了;与此同时,我自己也可以通过WEB程序向该物流表中新增物流公司,比如,我新增一个圆通快递,那么,这个圆通快递的ID号888,就不能跟我通过API接口下载下来的放在同一个字段了吧(因为我无法预测淘宝是不是也有一个同样的888号)?如果非要一个字段的话,那么需要有显示的标识,以区别于下载的。但是,如果这样,那么又有什么意义呢?很冗长。。。。。。有没有高效的解决方案?

有人说,那就再增加一个字段,自动编号的,那么在该表中,该自动编号的ID是唯一的。但是,如果这样的话就会遇到我一开始所说的问题,就是数据表迁移、合并,那么,这个字段又废掉了。。。。。。数据又冗长。。。。。。。字段多。。。。。

遇到这样的问题,如何解决呢?如何提前规划的呢?
...全文
235 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Go 旅城通票 2015-11-03
  • 打赏
  • 举报
回复
同#5一样,用guid,或者另外插入一列,外表的id导入这列中,然后导入的其他外表和此列关联的,重新更新下id为生成的自动编号
jiaqiangzhou 2015-11-02
  • 打赏
  • 举报
回复
学习中。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
jiaqiangzhou 2015-11-02
  • 打赏
  • 举报
回复
学习中。。。。。。。。
jiaqiangzhou 2015-11-02
  • 打赏
  • 举报
回复
学习中。。。。。。。。
我有时不是我 2015-11-02
  • 打赏
  • 举报
回复
设计表的时候考虑到有这样的需求主键就用GUID
我有时不是我 2015-11-02
  • 打赏
  • 举报
回复
设计表的时候考虑到有这样的需求主键就用GUID

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧