什么是好的数据库设计?
一些原则可为数据库设计过程提供指导。第一个原则是,重复信息(也称为冗余数据)很糟糕,因为重复信息会浪费空间,并会增加出错和不一致的可能性。第二个原则是,信息的正确性和完整性非常重要。如果数据库中包含不正确的信息,任何从数据库中提取信息的报表也将包含不正确的信息。因此,基于这些报表所做的任何决策都将提供错误信息。
所以,良好的数据库设计应该是这样的:
将信息划分到基于主题的表中,以减少冗余数据。
向 Access 提供根据需要联接表中信息时所需的信息。
可帮助支持和确保信息的准确性和完整性。
可满足数据处理和报表需求。
设计过程
设计过程包括以下步骤:
确定数据库的用途:这可帮助进行其他步骤的准备工作。
查找和组织所需的信息:收集可能希望在数据库中记录的各种信息,如产品名称和订单号。
划分到表中的信息:将信息项划分到主要的实体或主题中,如“产品”或“订单”。每个主题即构成一个表。
关闭信息项目导入的列 确定希望在每个表中存储哪些信息。每个项将成为一个字段,并作为列显示在表中。例如,“雇员”表中可能包含“姓氏”和“聘用日期”等字段。
指定为主键:选择每个表的主键。主键是一个用于唯一标识每个行的列。例如,主键可以为“产品 ID”或“订单 ID”。
设置表关系:查看每个表,并确定各个表中的数据如何彼此关联。根据需要,将字段添加到表中或创建新表,以便清楚地表达这些关系。
优化您的设计:分析设计中是否存在错误。创建表并添加几条示例数据记录。确定是否可以从表中获得期望的结果。根据需要对设计进行调整。
应用规范化规则:应用数据规范化规则,以确定表的结构是否正确。根据需要对表进行调整。
参考:数据库设计基础
数据库设计的基本步骤如下:
1、安装并打开MySQL WorkBench软件以后,在软件的左侧边栏有三个选项,分别是对应“连接数据库”、“设计数据库”、“迁移数据库”的功能。这类选择第二项,设计数据库,点击右边的“+”号,创建models。
2、进入MySQL Model界面后,点击“Add Diagram"。
3、然后就进入了EER Diagram的设计页面。可以从左侧的图标中选择要创建的资源。鼠标停留在图标上3秒后,会提示资源的类型。选择资源后,可以在设计页面上方选择属性。
4、这里添加了一张数据库表,添加后,双击,在页面的底部会出现数据库表的编辑框。
5、这里创建一张user表,设置了id、name、age三列。
6、还可以创建外键,左侧提供了四种外键类型。点击后,只需要用鼠标分别选中要关联的两个表即可。Workbench会自动生成对应的外键。
7、在文件、导出中,可以选择导出为sql脚本。
8、下图是导出过程sql脚本的过程。
图片数据库的设计:A表为明细信息,B表是图册,属于汇总信息多对一的关系所以A表增加字段,记录图册编号就可以了
如果有已存在的图片想另编成册,就需要在A表复制已存在数据写入新图册在B表的编号吧?或者有其它更优算法吗?
如果你想保留这张图片历史上存在于哪些图册,有两种方法,一是新建一条记录,原图册也能正常打开;二是建立一个历史关系表,只保留变更过的图片与图册对应关系,这样要想显示原图册程序上费点劲,好处是图片库都是唯一的,不乱。
如果不保留痕迹,将图册字段变更就行。
因为你这个不存在什么逻辑关系,就没有什么所谓算法问题,搞个前台界面,勾选信息,然后通过循环,进行数据处理。速度不见得慢。
望采纳!!!感激感激
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)