java jdbc oracle相关问题

__java小白求各位大神一个问题:
我们在做一个java基础的小项目,主要做医院住院病人管理系统,基础有三张表,分别是病人表,医生表,医院部门表。在此基础上已经做好了相关的增删改查的功能。但是我们原有的构思是每往病人表里面添加一个病人通过java语言给这个病人创建一个详细住院日志表,包括他的每日花费,医生的查看信息等。这些功能都已经完成,但是在给老师看项目的时候,老师认为我们这种每次添加一个病人就创建一个表在数据库里面占的太大,说若果有两万个病人难道你创建两万个表?但是我最初的构思就是每个病人住院都应该有一个详细信息表(相当于日志表)在里面可以更新,我觉得挺符合实际的。在此我想知道,数据库建表真的有那么占空间吗?小白认为一张表而已,不会占据很大的空间,我想知道这些内容,但是百度也没有,希望各位大神能体会初学者做一个项目的艰辛,我真的不想改,如果占空间不大,我明天打算以此来说服老师,希望各位前辈解答。

3个回答

如题,我认为每次添加一个病人就建立一张表是不符合实际的,你应该是建立了一张个人信息表,包括病人的身份证号,费用什么的,病人在数据库里面具体的体现应该是一条或者多条记录,而不是完整的一张表,这样才是最符合实际情况的。一个表要占用表空间,空间又会产生索引,每次对表进行查询都要先对表的索引进行查询,而你建立那么多用户,就有从那么多用户里表里寻找你需要的表,无疑对数据库产生了很大的开销,是不符合生产的。做开发的怎么优怎么来,oracle数据库作为一个经典的关系型数据库,你要充分的利用关系,建立几张基表即可。

个人认为新增一个病人建一张表不太合适。你需要的是记录 病人每日花费,医生的查看信息等等,这样的话你只需要建两张表就可以了。
一个是病人花费表A,另一个是医生观察信息表B。表A中大概字段是 病人id。医生id。日期花费等等;表B中同理 病人id。医生id。日期,内容。
这样的话完全可以满足你的需求

你只需要相应的功能建一张表就行了,怎么能按人建表呢

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问