请资深专家一起探讨探讨: 1、在数据应用设计方面,如何考虑历史记录的查询? 如:有三个表,分别是单位表,部门表,人员表。
单位表,含单位编码,单位名称 字段
部门表,含单位编码,部门编码,部门名称 字段
人员表,含单位编码,部门编码,人员编码,人员名称 字段 一旦单位表,部门表 中 单位编码,部门编码,发生改变,即在单位、部门发生关停并转后,如何处理人员表中的人员记录,查询历史人员记录,如何处理单位、部门表中单位部门的历史记录查询问题。 2、表的ER关系和约束问题如何考虑? 在数据库教程中,表之间的ER关系,设计时都用主外键来实现。 可是,在实际应用中,外键之类的确实不敢创建! 由于用户的水平基本偏低,万一把哪个单位给删了,建了外键的话,部门、人员的表岂不出问题了,有些数据库系统,会把部门、人员的表相关的数据全删了,有些数据库,则删不掉,提示一大堆错误! 主外键的是否创建如何权衡比较妥当?
3、如何做到应用和数据库平台的无关性? 许多应用软件,在不同的省份实施,不同的省份有自己的数据库选择规定。比如在新疆,该应用的数据库系统全省用SYBASE系统,在内蒙,用ORACLE系统,在山东用DB2系统... 我们在开发数据库应用时,如何实现这样的应用系统的数据库部分设计,有什么办法实现应用系统的数据库无关性? 请资深专家一起探讨探讨
单位表,含单位编码,单位名称 字段
部门表,含单位编码,部门编码,部门名称 字段
人员表,含单位编码,部门编码,人员编码,人员名称 字段 一旦单位表,部门表 中 单位编码,部门编码,发生改变,即在单位、部门发生关停并转后,如何处理人员表中的人员记录,查询历史人员记录,如何处理单位、部门表中单位部门的历史记录查询问题。 2、表的ER关系和约束问题如何考虑? 在数据库教程中,表之间的ER关系,设计时都用主外键来实现。 可是,在实际应用中,外键之类的确实不敢创建! 由于用户的水平基本偏低,万一把哪个单位给删了,建了外键的话,部门、人员的表岂不出问题了,有些数据库系统,会把部门、人员的表相关的数据全删了,有些数据库,则删不掉,提示一大堆错误! 主外键的是否创建如何权衡比较妥当?
3、如何做到应用和数据库平台的无关性? 许多应用软件,在不同的省份实施,不同的省份有自己的数据库选择规定。比如在新疆,该应用的数据库系统全省用SYBASE系统,在内蒙,用ORACLE系统,在山东用DB2系统... 我们在开发数据库应用时,如何实现这样的应用系统的数据库部分设计,有什么办法实现应用系统的数据库无关性? 请资深专家一起探讨探讨
单位表(单位编码,单位名称 字段)
部门表(部门编码,部门名称 字段)
人员表(人员编码,人员名称 字段)
关系表(单位编码,部门编码,人员编码)
2,
一般不设外键
3,
oracle有透明网关,但其它数据库不清楚