设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1532|回复: 4
打印 上一主题 下一主题

[表] 对置顶帖开发者十诫的疑问

[复制链接]
跳转到指定楼层
1#
发表于 2016-6-23 10:07:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
7.Thou shalt not use Autonumber if the field is meant to have meaning for thy users. 如果一个字段对你的使用者而言有任何应用上意义,不应当对其采用自动编号。


自动编号用作表设计中的主键、把表关联起来挺方便的,为什么说不应当采用呢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2016-6-23 10:11:44 | 只看该作者
还有这句话

6.Thou shalt split thy databases. 你应当分离你的数据库


分离数据库怎么理解,是采用链接表、链接窗体么

谢谢,新手
3#
发表于 2016-6-23 12:25:29 | 只看该作者
本帖最后由 todaynew 于 2016-6-23 14:29 编辑

“如果一个字段对你的使用者而言有任何应用上意义,不应当对其采用自动编号。”

我理解是这样的:
1、对使用者有意义,表现为使用者可以通过字段的值理解其含义,比如有一个收料表,收料单号可能对使用者有意义,使用者或许需要通过单号来判别收料的类型、归属的月度等,如果这时用1、2、3、。。。进行收料单号编号的话,使用者就得不到他希望通过单号来识别的信息了。
2、这里的自动编号,应该是指不包含其他对使用者有意义信息的自动编号方法,而不是是指特定了一些有用信息的自动编号方法。
3、是否用自动编号做主键主要看是否更为方便,自动编号做主键不排除可以另外存在备用主键。比如我们在收料表中设计一个“收料ID”的自动编号字段作为主键,同时也设计一个“收料单号”作为备用主键。我们呈现给使用者的是收料单号这个备用主键,但实际对数据表的很多操作,我们主要依赖“收料ID”这个主键。

“你应当分离你的数据库”
我理解这句话,似乎应该是:“你应当分解你的数据库”。意思是数据库应该至少按照第一、二、三范式进行设计,减少数据冗余。
4#
发表于 2016-6-23 12:41:20 | 只看该作者
主键,不用自动ID,这说法不是绝对的,
自动编号,一旦删除,不能随意添加回去,连续性比较好,不能更改
不好的地方就是,查看起来比较麻烦,不利于简单的查看和判断
实际设计上要根据需要来设计,举个例子:
物料编号,一般会被 很多的表数据关联使用,有一天,由于某些原因,公司要把物料编号重新整理,比如说8位的变成12位了,编排规则也变了,如是一个文本类的字段做为主键的话,改的地方是相当的惊人的,但一开始就是自动ID和数字类关联键的话,而物料编号是另我一个非主键字段显示,这样,就相当的简单,这类方式比如:SAP就采用此类方式
各有好处,就看程序设计了

分离数据库,因为这句不知道从何说起,从实际工作来说,从单机使用上,意义不大,多人共享数据,那当然是要拆分的,除此之外,就是考虑程序编辑与更新时,不随意覆盖数据,可能是一方面原因,(因为程序部分与数据源部分分开了)

5#
 楼主| 发表于 2016-6-23 21:28:26 | 只看该作者
谢谢两位,分析的很详细

还有todaynew老师的小品我很喜欢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-4-29 00:02 , Processed in 0.104237 second(s), 28 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表