任何人都可以建议以下数据库设计:
用户可以创建目录 在目录中,用户可以创建一个范围 - 即一系列产品 在一个范围内用户可以添加多个产品 在一个范围内,用户可以添加多个范围 -> 范围 -> 范围 -> 范围,所有范围均包含产品。
我的数据库中目前有 -
catalogue_range 包含 - id、名称、描述 和 Catalogue_product 包含 - id、range_id、名称、描述
任何人都可以看到我正在尝试制作什么吗?
我的目标是能够在一个目录范围内创建多个目录范围,并向每个目录范围添加多个产品。
这是我当前的 SQL:
`catalogue_range` (
`id` char(40) NOT NULL,
`profile_id` char(40) NOT NULL,
`type` enum('pdf','db') DEFAULT NULL,
`status` enum('new','draft','live') NOT NULL,
`name` varchar(64) NOT NULL,
`description` varchar(1000) NOT NULL,
`updated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `profile_id` (`profile_id`)
)
`catalogue_product` (
`id` char(40) NOT NULL,
`catalogue_id` char(40) NOT NULL,
`order` smallint(5) unsigned NOT NULL,
`name` varchar(50) NOT NULL,
`description` varchar(250) NOT NULL,
PRIMARY KEY (`id`),
KEY `catalogue_id` (`catalogue_id`)
)
提前致谢。
最佳答案
- 目录(目录 ID,您的私有(private)属性)
- 产品(产品 ID、#catalogue ID、您的私有(private)属性)
- 范围(范围 ID,#range id 父级,您的私有(private)属性)
- 产品范围(#产品 ID、#range id)
您将需要存储过程/应用算法来编译:
- 某个范围的乘积列表(用于计算递归 sql,mysql 不提供像 oracle 那样的分析函数)
- 目录/范围的范围列表
希望有帮助。
关于mysql - 数据库设计 - 目录 - 范围 - 产品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14149566/