在mysql中为产品和类别创建唯一的url
问题描述:
我正在为网站创建数据库。在mysql中为产品和类别创建唯一的url
我面临一个问题,它是我不知道如何结合表,以不具有相同的产品或类别的网址。
我的想法是创建5桌:PRODUCTS
,CATEGORIES
,URLS
,URLPRODUCTS
和URLCATEGORIES
。
表PRODUCTS
包含产品的所有信息和自动增量主键pid
。
与CATEGORIES
相同(cid
)。
URLS
有2列:自动增量主键uid
和唯一键url
。
另外两列是PRODUCTS
和URLS
或CATEGORIES
和URLS
的组合。
它们应该具有什么样的结构,以避免一个产品具有与另一个产品或类别相同的url,并且每个产品或类别只有一个url?
答
您的要求似乎你有每个产品和类别的单独的URL。 想要添加一点,即每个“产品”至少属于一个类别,因此category'tbl中的categoryId的产品中应该有一列作为外键。 即将来临使用案例: 我认为在产品&类别表中应该有一个名为'uid'的列,它将成为来自URL表的外键,这将确保每个产品/类别只有一个网址。 因此,无需创建tbls URLPRODUCTS和URLCATEGORIES(多对多关系案例),因为您的req是一对一的。
如果我尝试为产品和类别添加相同的'idurl',这会不会有问题? – danibg
这将是,但将是一个小。同样,如果只有一种产品出现在该类别中,我们可能会出现产品和类别都需要相同的网址的情况。 –
呃,我不想那么做。我宁愿只显示该类别的一个产品(它只会列出该类别的所有产品,其中一个产品就是这种情况)。 – danibg