数据库表设计 今日在做数据库表设计时,以指定的编号作为主键,但是有人告诉我说每张表都必须设置个自增序列字段,同时说网易数据库也这样设计(不知真假)。我很不明白为什么每张表都要加这样的自增序列。不知道各位在建表设计的时候是不是也这样做的,如果这样做的请告诉我为什么。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我们加自增序列的目的是: 1、捕获数据增量 2、ETL抽取使用,判断先手顺序 自增列 可用于排序分页。因为自增列本身是number ,效率高。最大的也就是最好插入的。但不是必须的。可以建立。 有了自增列做主key,当然就不需要在建主key了而且自增列有很多功能,不是你随便建一个主键可以代替的,如果你恰好需要一个自增的主key,那就建自增列是最好的办法啊.但是,并不是每个表都要这样做啊,有用的时候就用,没用的表建它干嘛啊? 一般来说都会建一个自增的编号number 可以作为主键 然后获取数据也方便点 可以直接锁定到行 多谢楼上各位,看来这个是否要给每张表都增加自增列是可以有,也可以没有的,并不是必须的。关于1楼说的ETL,我可以用时间戳的方式来抽取。关于4楼说法我不理解,加了自增列查询效率就高了,有这说法吗,论证过吗?请各位不吝赐教,谢谢。 纠结了很久是夫人让我明白了因为编程思想不一样,决定你是否需要此ID.面向对象的人喜欢用ID自增,面向过程的人喜欢用业务主键。 RMAN恢复时报错,请教大神们 oracle查询效率 ORACLE临时表的问题 用ORACLE触发器实现将服务器1上的表1一旦操作,同时更新服务器2上的表2,需要怎么样配置ORACLE 将oracle 8i 数据库 test 直接拷贝,在 oracle 9i 下面打不开,寻解决办法! 在存储过程中用dbms_output.put_line()怎么打印不出结果? 关于Oracle在线用户的问题(在线等) **哪里有下载oracle的安装文件的?** proc中使用prepare的问题 唯一键不能产生唯一索引,请大神帮下忙 oracle报表格式化,btitle的问题 数据库未打开的错误
因为自增列本身是number ,效率高。最大的也就是最好插入的。
但不是必须的。可以建立。
而且自增列有很多功能,不是你随便建一个主键可以代替的,
如果你恰好需要一个自增的主key,那就建自增列是最好的办法啊.
但是,并不是每个表都要这样做啊,有用的时候就用,没用的表建它干嘛啊?
多谢楼上各位,看来这个是否要给每张表都增加自增列是可以有,也可以没有的,并不是必须的。关于1楼说的ETL,我可以用时间戳的方式来抽取。关于4楼说法我不理解,加了自增列查询效率就高了,有这说法吗,论证过吗?请各位不吝赐教,谢谢。