在数据库中保存对象的最佳方法

时间:2020-10-23 11:18:21

标签: database design-patterns database-design erd

故事: 我正在尝试在PHP中开发一个大型应用程序。主要问题是我必须处理对象,并且需要应用CRUD操作。例如:假设我们有类图(编译器):

Project { name:string, statements:list …}
Statement{ type:string }
IfStatement exend Statement { condition:Exp, …}
…

问题(什么是ERD或数据库的最佳设计) 据我所知,我有两种解决方案:

  1. 序列化主对象并将其保存在数据库中
  2. 在类图中为每个类创建一个表,并通过外键进行链接

注意:我已经阅读了有关ORM的信息,但我认为它类似于第一种解决方案

1 个答案:

答案 0 :(得分:1)

在我看来,序列化数据库中的对象不是一个好的解决方案。 您必须能够找到和编辑数据库中的每个对象属性。

它需要具有关系和键的简单逻辑结构。 这样,您就可以构建CRUD管理员仪表盘,以一种逻辑可靠的方式读取和编辑所有数据。

MySQL Workbench是一个真正好的起点,它与PhpMyAdmin进行通信,您可以使用它来构建数据库和创建shemas。

然后,如果您正在寻找专业的CRUD生成器,我建议您这样做:https://www.phpcrudgenerator.com/

[免责声明:我是作者]

它可以在几分钟内以非常简单的方式构建您的CRUD管理仪表板,并具有许多高级功能。

CRUD Generator生成的管理仪表板具有Bootstrap 4,jQuery,PHP对象和TWIG模板。

相关问题