zoukankan      html  css  js  c++  java
  • 3.5 创建模型-关系

    术语定义

    有许多术语用于描述关系

    • 相关实体: 这是包含外键属性的实体。 有时称为关系的 "子级"。
    • 主体实体: 这是包含主/备用键属性的实体。 有时称为关系的 "父项"。
    • 主体密钥: 唯一标识主体实体的属性。 这可能是主键或备用密钥。
    • 外键: 用于存储相关实体的主体键值的依赖实体中的属性。
    • 导航属性: 在主体和/或从属实体上定义的属性,该属性引用相关实体。
      • 集合导航属性: 一个导航属性,其中包含对多个相关实体的引用。
      • 引用导航属性: 保存对单个相关实体的引用的导航属性。
      • 反向导航属性: 讨论特定导航属性时,此术语是指关系另一端的导航属性。
    • 自引用关系: 依赖关系和主体实体类型相同的关系。

    下面的代码显示与之间的一对多关系 Blog``Post

    public class Blog
    {
        public int BlogId { get; set; }
        public string Url { get; set; }
    
        public List<Post> Posts { get; set; }
    }
    
    public class Post
    {
        public int PostId { get; set; }
        public string Title { get; set; }
        public string Content { get; set; }
    
        public int BlogId { get; set; }
        public Blog Blog { get; set; }
    }
    • Post是依赖实体
    • Blog是主体实体
    • Blog.BlogId是主体键(在本例中为主密钥,而不是备用密钥)
    • Post.BlogId为外键
    • Post.Blog是一个引用导航属性
    • Blog.Posts是集合导航属性
    • Post.Blog是的反向导航属性 Blog.Posts (反之亦然)
  • 相关阅读:
    P2149 [SDOI2009]Elaxia的路线
    P1346 电车
    P3174 [HAOI2009]毛毛虫
    P3047 [USACO12FEB]附近的牛Nearby Cows
    P4053 [JSOI2007]建筑抢修
    P2607 [ZJOI2008]骑士
    [HNOI2006]马步距离
    [POI2014]Hotel
    [BZOJ3856]Monster
    [BZOJ2819]Nim
  • 原文地址:https://www.cnblogs.com/maanshancss/p/13360486.html
Copyright © 2011-2022 走看看