[英]SQL Azure database design issue
我正在建立一个存储类别的数据库,每个类别都有多个子类别。
我正在尝试找到最佳的设计方式,但是Cant真的没有考虑任何事情,除了为每个类别创建一个表外,看到至少会有50个类别会感到有些混乱。 有没有一种方法可以创建“类别”表,并且以某种方式有一个名为“ SubCategories”的列来列出多个字符串? 如果是这样,我将如何拆分这些子类别,以便可以从应用程序中毫无问题地检索它们?
您的评论是大多数人都会选择的解决方案。
创建一个表Categories
,以及第二个表SubCategories
。
Categories
将具有唯一的主键CategoryID
(认为Identity
)。
SubCategories
将具有主键SubCategoryID
和外键 CategoryID
现在,假设您的代码中有一个类别,并且想要获取其所有SubCategories:
DECLARE @CategoryID BIGINT = 23
SELECT s.SubCategoryID, s.CategoryID, s.Name
FROM SubCategories s
WHERE s.CategoryID = @CategoryID
当然,如果您使用的是诸如Entity Framework之类的数据库访问技术,那么您很可能不会编写这种SQL,因为EF会为您解决这一问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.