Php 许可证模板mysql表

Php 许可证模板mysql表,php,mysql,database,datamodel,inventory-management,Php,Mysql,Database,Datamodel,Inventory Management,我必须开发一个软件清单(使用php和mysql),我正在规划数据模型/设计。问题是,每个软件供应商都有不同的许可证类型,具有不同的字段,因此它不像创建“许可证”表那么简单 到目前为止,我最好的解决方案是创建一个“licenses”表和一个“templates”表,其中每个表都有大约10列,命名范围从1到10。license表保存数据,templates表保存该数据的o列字段名 有没有更好的方法来实现这一点 如果序列化不是一个选项,那么另一个选项将是键值设计: Table: LicenceAttr

我必须开发一个软件清单(使用php和mysql),我正在规划数据模型/设计。问题是,每个软件供应商都有不同的许可证类型,具有不同的字段,因此它不像创建“许可证”表那么简单

到目前为止,我最好的解决方案是创建一个“licenses”表和一个“templates”表,其中每个表都有大约10列,命名范围从1到10。license表保存数据,templates表保存该数据的o列字段名


有没有更好的方法来实现这一点

如果序列化不是一个选项,那么另一个选项将是键值设计:

Table: LicenceAttributes

LicenceID | FieldName     | FieldValue
1         | numberofusers | 5
1         | cost          | 999
2         | somethingelse | blah

与序列化一样,如果所有许可证中的字段确实不同,则这只是一个可使用的设计

如果您不需要对这些数据运行查询,您可以将其序列化并将其转储到单个“data”varchar字段中。这可能会起作用,尽管我对一个能够处理查询且更规范化的解决方案感兴趣。这是一个更大的数据库的一部分,你永远不知道你需要什么:)你想过为每一行定义不同类型的表,它定义了许可证的类型和特定的模板吗?我想这就是方法,在读了这篇文章后:是的,
EAV
这就是我在大脑中搜索的描述!这里有更多的讨论: