社区
疑难问题
帖子详情
谁能分析这个数据库的结构
lishle
2003-09-13 10:33:49
我最近在开发一个期刊的管理软件 但数据库的设计一直没有得到解决,所有希望各位师兄邦我分析一下 也算交个朋友
大家都知道“期刊”也就是“杂志”,不同的期刊发行的周期是不一样的,有“周刊”“月刊”“半月刊”“季刊”“半年刊”等等 我所要实现的是每来一种“期刊”数据库就可以记录来的是第几期 但由于刊种太多没办法判断 这个数据库到底该怎么设计 希望大家能邦我考虑一下 可能我说的不是太清楚 我会劲力补充
...全文
37
8
打赏
收藏
谁能分析这个数据库的结构
我最近在开发一个期刊的管理软件 但数据库的设计一直没有得到解决,所有希望各位师兄邦我分析一下 也算交个朋友 大家都知道“期刊”也就是“杂志”,不同的期刊发行的周期是不一样的,有“周刊”“月刊”“半月刊”“季刊”“半年刊”等等 我所要实现的是每来一种“期刊”数据库就可以记录来的是第几期 但由于刊种太多没办法判断 这个数据库到底该怎么设计 希望大家能邦我考虑一下 可能我说的不是太清楚 我会劲力补充
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
GoldJava
2003-09-15
打赏
举报
回复
我主张用三张表的做法,但具体实现方法不同:
第一张表为期刊信息表:字包括:ISSN,代码,刊名,刊期,主办者,出版地等信息。第二张表为刊期记录,即:记录月刊,周刊,年刊,季刊等的特点,有两个字段期刊,总期数/年。第三张表为到刊记录,由前两个表生成,有四个字段,ISSN,应到数,实到数,记到日期等。这样在生成第三个表时,一次性生成整个表单。例如:给ISSN号为:7568-2223的季刊生成的第三个表为
ISSN 到期 应到 实到 日期
7568-2223 1 5 0
7568-2223 2 5 0
7568-2223 3 5 0
7568-2223 4 5 0
这样到时只需修改到数即可,便于统计实到数,查出缺刊记录,而且通进应到和实到的差可得出那些期刊到货不齐。
realgz
2003-09-15
打赏
举报
回复
觉得做复杂点好:
类型表(基本属性)::
类型id(pk),发行描述(char),周期性质(年相关/月相关/周相关/日相关)(int)
对于周期性质使用整数操作获得性质(就像unix下的文件权限表示),比如设定规则,以周期性质的高8位的后4位做为表示相关性质的是否存在,低24位分为4个6位作为相关周期的属性(每个6位的第一位表示是否需要细分本周期(如半月,半周))。
用二进制可以清楚看到期刊性质情况:
如0x0000 0010 000000 000000 100001 000000 表示半月刊=1677216
0x0000 0010 000000 000000 000011 000000 表示季刊
0x0000 1000 000001 000000 000000 000000 表示年刊
用这种类型的编码还可以新增复合类型如每一月零一周发行的刊物:
0x0000 0110 000000 000001 000001 000000
如果需要知道哪一类型是否与哪一周期相关,只要一个&操作就可以获得结果
0x0000 0010 000000 000000 000011 000000
& 0x0000 0010 000000 000000 000000 000000
= 0x0000 0010 000000 000000 000000 000000 //因此周期与星期相关
再加上发行周期内日期就可以知道
报刊目录表(基本属性):
报刊代号,报刊名称,报刊类别(报纸/杂志),报刊种类(类型ID),出版日期(tinyint)
其中,出版日期为该报刊在周期内的发布日期,如每周二发行就可以用出版日期为3的周刊记录表示。
这样的话就可以方便地专门做一个存储过程(函数?)来计算任意属性刊物的期数和其他数据了,而且在新增类型的时候不必更改原来的计算逻辑。
leimin
2003-09-14
打赏
举报
回复
类型表:
类型id(pk),期刊类型,状态,总期数
期刊类型:双月刊,旬刊,旬二刊,半年刊,年刊,半月刊,周刊,周二刊
状态:0 正常期刊;1 增刊;2 副刊
期刊表:
期刊id(pk),刊号(PK),期次(pk),类型id, 日期,数量,是否有副刊
副刊表:
副刊id(pk),刊号(PK),期次,类型id, 日期,数量
davidtc
2003-09-14
打赏
举报
回复
呵呵,碰到同行了,我以前是做邮局报刊发行系统的
不知道你做的系统复杂到什么程度?
如果只是要计算一下期刊到达情况,缺数等,那就相当于一个简单的物流,把数据集清楚就行了
如果你要做个功能强大点的系统,那可就要从长计议了
期刊分很多种,月刊最好处理,双月刊,旬刊,旬二刊,半年刊,年刊,半月刊,周刊,周二刊等,每一种的发行周期不同,出版日期也不同,所以,最好的方法是可以通过一个算法来实现报刊发行期的计算,那么,我们有了下面的报刊目录表
报刊目录表(基本元素):
报刊代号,报刊名称,报刊类别(报纸/杂志),报刊种类(月刊等),出版日期(?)
注:‘?’根据不同的‘报刊种类’纪录的数据略有不同,例如:报刊种类 = 月刊,那么出版日期就是月刊每个月发行的日期,只记日期,不用记月份;报刊代号 = 半月刊,那么出版日期就纪录2个数,分别是一个月的2次出版的日期,只记日期,不用记月份,等,以此类推
这样,我们就可以根据这个基本表,算出任意时间对应的期刊的期数(做个存储过程),就可以根据你的到货日期,计算是那一期的杂志了,反之亦可(可以计算整期未到)。
playyuer
2003-09-13
打赏
举报
回复
三张表:
期刊类型表:
类型ID(pk),每年总期数
期刊登记表:
期刊名称id(pk),期刊类型
期刊到达情况登记表:
期刊名称id(pk),期次(pk), 日期
playyuer
2003-09-13
打赏
举报
回复
三张表:
期刊类型表:
类型ID,每年总期数
期刊登记表:
期刊名称id,期刊类型
期刊到达情况登记表:
期刊名称id,期次, 日期
lishle
2003-09-13
打赏
举报
回复
谢谢你的思路 但我要记录不同周期的“期刊”的到达情况,要保存一年的数据,并且我在年底还可以计算每种期刊缺多少期没有到,分别是第几期。
呵呵 辛苦了
klbt
2003-09-13
打赏
举报
回复
主键可以用“刊号”,
可以建议一个“类别”列,内容是“周刊”“月刊”“半月刊”“季刊”“半年刊”等,
再建立一个“期数”列来记录是第几期。
为期刊名称建立一个“刊名”列;
此外还有如下列:
内容分类
编辑部
主编
定价
级别
页数
...
数据库
分析
之概念
结构
设计
概念
结构
设计:将需求
分析
得到的用户需求抽象为信息
结构
(即概念模型)的过程。 一、概念模型 在需求
分析
阶段所得到的应用需求应该首先抽象为信息世界的
结构
,然后才能更改、更准确地用某一
数据库
管理系统实现这些需求。 概念模型的主要特点: 1. 能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求,是现实世界的一个真是模型。 2. 易于理解,可以用它和不熟悉...
数据库
设计之物理
结构
设计
数据库
在物理设备上的存储
结构
与存取方法称为
数据库
的物理
结构
,它依赖于选定的
数据库
管理系统。为一个给定的逻辑数据模型选取一个最适合应用要求的物理
结构
的过程,就是
数据库
的物理设计。 一、
数据库
的物理设计 确定
数据库
的物理
结构
,在关系
数据库
中主要指存取方法和存储
结构
。 对物理
结构
进行评价,评价的重点是时间和空间效率。 如果评价
结构
满足原设计要求,则可进入到物理实施阶段,否则,就需要重...
详写
数据库
需求
分析
需求
分析
一、
数据库
系统设计概述 1.
数据库
系统设计的内容1>
数据库
的
结构
特性设计2>
数据库
的行为特性设计3>
数据库
的物理模式设计 2.应注意的问题 3.基本方法 4.基本步骤二、系统需求
分析
1.概述 2.基本步骤 3.主要任务 4.抽象系统概貌 5.数据流图 6.数据字典1>数据项2> 数据
结构
3>数据流4> 数据存储5>...
数据库
的逻辑
结构
和物理
结构
数据库
的概念
结构
设计:需求
分析
阶段所得到的应用需求应该首先抽象成信息世界的
结构
,才能更好地、更准确地用某一DBMS实现。
数据库
的逻辑
结构
设计:逻辑
结构
设计的任务就是将概念
结构
设计阶段设计好的全局E-R图转换成DBMS产品所支持的数据模型(关系模型),并进行规范化和优化,然后为每个应用设计外模式。
数据库
的物理
结构
设计:
数据库
在物理设备上的存储
结构
和存取方法就称为数
数据库
分析
之逻辑
结构
设计
概念
结构
设计:将需求
分析
得到的用户需求抽象为信息
结构
(即概念模型)的过程。 一、概念模型 在需求
分析
阶段所得到的应用需求应该首先抽象为信息世界的
结构
,然后才能更改、更准确地用某一
数据库
管理系统实现这些需求。 概念模型的主要特点: 1. 能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求,是现实世界的一个真是模型。 2. 易于理解,可以用它和不熟悉...
疑难问题
22,209
社区成员
121,730
社区内容
发帖
与我相关
我的任务
疑难问题
MS-SQL Server 疑难问题
复制链接
扫一扫
分享
社区描述
MS-SQL Server 疑难问题
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章