标签: entity-relationship

如何在SQL Server Management Studio中创建映射表?

我正在学习SQL中的表设计,我想知道如何创建映射表以建立两个其他表之间的多对多关系?

我认为映射表需要两个主键 - 但我看不出如何创建它,因为它看起来只能有一个主键列?

我正在使用Database Diagrams功能来创建表和关系.

sql-server entity-relationship sql-server-2005

3
推荐指数
1
解决办法
5450
查看次数

核心数据代码中的简单关系

我是一个可可新手试图创建一个包括Core Data的iPhone应用程序.

我的问题是:我现在有一个小应用程序正在运行一个名为播放列表的实体,我在表视图中显示并可以添加和删除条目.

我在我的PlayerAppDelegate中有这些:

playlistManagedObjectModel

playlistListManagedObjectContext

playlistListPersistentStoreCoordinator

添加实体:

Playlist *playlist = (Playlist *)[NSEntityDescription
    insertNewObjectForEntityForName:@"Playlist" 
             inManagedObjectContext:playlistListManagedObjectContext];
Run Code Online (Sandbox Code Playgroud)

现在我想添加一个名为Song的子级别,它具有多对多的关系.

添加了播放列表属性:添加了songRelation Song属性:playlistRelation

我已经创建了这个实体,并且双向建立了关系,单击Optional标记,因为我想在播放列表中至少有一首歌曲.

设置此关系后,我现在无法再创建播放列表而不会收到警告.问题是"它"也想创作一首歌,但我不知道怎么做.

在这种情况下,我找不到一个关于如何添加新播放列表的示例的单个地方,即何时与另一个必须添加的实体有关系.

我需要创建这些:

songManagedObjectModel
songListManagedObjectContext
songListPersistentStoreCoordinator
Run Code Online (Sandbox Code Playgroud)

或以某种方式通过播放列表实体访问歌曲实体?

也许这样的东西:

添加播放列表

添加歌曲

设置"关系"属性(如何?)

保存到持久性商店

要么????

我已经搜索了很多东西,可能误解了一些基本的东西,因为没有可用的例子....

Rgds PM

iphone cocoa entity-relationship core-data

3
推荐指数
1
解决办法
6493
查看次数

如何在SQL Server中实现多关系?

我正在尝试设计一个与ASP.net MVC应用程序一起使用的数据库.以下是场景:有三个实体,用户可以为这些不同的实体发布评论.我只是想知道如何只为一个表放置注释并将所有其他实体链接到它.显然,Comments表需要3个引用(外键)到这些表,但是你知道这些外键不能为null,只能为每一行填充其中一个.有没有比为每个实体的评论实施三个不同的表更好的方法?

sql sql-server entity-relationship foreign-keys

3
推荐指数
1
解决办法
1774
查看次数

用于基于Web的绘图应用的卡布奇诺,Spoutcore或Homegrown解决方案?

我目前正在寻找构建绘制实体关系(数据模型)的应用程序.

看着Sproutcore和卡布奇诺,他们看起来都很健壮,可以处理那种事情(参见280张卡布奇诺咖啡的幻灯片)......

理想情况下,我需要一个框架,让用户拖放组件,然后将它们链接在一起,然后当用户完成后,能够"冻结"这些对象,因为JSON已准备好存储在某种数据库中,因此可以加载它们再次...

哪些提到的框架已经更加面向这个?

或者最容易在其缺乏的地方延伸?

或者从长远来看,使用jQuery/prototype会更容易吗?

javascript entity-relationship cappuccino sproutcore

3
推荐指数
1
解决办法
580
查看次数

防止Rails中的N + 1个查询

我已经看到了一些在Rails中:include调用ActiveRecord find方法之一时传递哈希值的例子.但是,我还没有看到任何关于这是否可以通过关系方法的例子.例如,假设我有以下内容:

def User < ActiveRecord::Base
  has_many :user_favorites
  has_many :favorites, :through => :user_favorites
end

def Favorite < ActiveRecord::Base
  has_many :user_favorites
  has_many :users, :through => :user_favorites
end

def UserFavorite < ActiveRecord::Base
  belongs_to :user
  belongs_to :favorite
end
Run Code Online (Sandbox Code Playgroud)

我看到的所有示例都显示如下代码:

User.find(:all, :include => :favorite)
Run Code Online (Sandbox Code Playgroud)

但我没有看到任何关于使用关系的例子.相反,我可以做这样的事情吗?

User.favorites(:include => :user)
Run Code Online (Sandbox Code Playgroud)

entity-relationship ruby-on-rails query-optimization select-n-plus-1

3
推荐指数
1
解决办法
1万
查看次数

EF Code第一个相关实体上下文失败

Dunno如何恰当地命名.我在m:n关系中有两个实体:成员和角色.

public class Role
{
    public int Id { get; set; }
    public string Title { get; set; }

    public ICollection<Member> MembersInRole { get; set; }
}

public class Member
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string Password { get; set; }
    public string Email { get; set; }

    public ICollection<Role> Roles { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我已经制作了一些种子数据:http :
//i56.tinypic.com/2vjvj1w.png

并写了测试:http :
//i54.tinypic.com/112916b.png

问题是,我的会员实体没有分配角色,即使我在上下文中创建它们(如图所示).我不知道出了什么问题.数据库中的表似乎没问题.我不确定上下文实例是否有问题.但它应该没问题,因为我一直在处理种子数据.

entity-relationship many-to-many entity-framework ef-code-first entity-framework-4.1

3
推荐指数
1
解决办法
912
查看次数

使用Visio 2010从SQL导出实体关系图(Professional Plus)

我正在寻找从Viso图中导出SQL的问题的相反解决方案.我有用于创建MySQL数据库的多个表的SQL语句.有没有办法使用Visio 2010的逆向工程功能来创建其图表?

我想知道是否有可能从Visio可以连接的SQL语句(MySQL)创建Access数据库...替代我将尝试使用另一个MySQL数据库,在那里创建表,并尝试连接到Visio到这个数据库.任何说明如何做到这一点?其他方法?

sql diagram visio entity-relationship export

3
推荐指数
1
解决办法
1万
查看次数

关系的双方必须具有相同的列数

我正在尝试在两个表之间创建关系.第一列有四列First(idP,state,phone,no),第二列有4列:Second(id,fname,lname,city).但是,当我尝试在它们之间建立关系时,我得到错误"关系的双方必须具有相同的列数".好吧,他们都有4列.

entity-relationship sql-server-2008

3
推荐指数
1
解决办法
8667
查看次数

一对多关系:使用JPA 2.0更新删除的子项

我有一个双向的一对多关系.

0或1 客户 < - > 0个或更多产品订单的列表.

应该在两个实体上设置或取消设置该关系:在客户端,我想设置分配给客户端的产品订单列表; 然后应该将客户端设置/取消设置为自动选择的订单.在产品订单方面,我想设置分配了oder的客户端; 然后,应从其先前已分配的客户列表中删除该产品订单,并将其添加到新分配的客户列表中.

我想使用纯JPA 2.0注释和一个"合并"调用到实体管理器(使用级联选项).我已尝试使用以下代码片段,但它不起作用(我使用EclipseLink 2.2.0作为持久性提供程序)

@Entity
public class Client implements Serializable {
    @OneToMany(mappedBy = "client", cascade= CascadeType.ALL)
    private List<ProductOrder> orders = new ArrayList<>();

    public void setOrders(List<ProductOrder> orders) {
        for (ProductOrder order : this.orders) {
            order.unsetClient();
            // don't use order.setClient(null);
            // (ConcurrentModificationEx on array)
            // TODO doesn't work!
        }
        for (ProductOrder order : orders) {
            order.setClient(this);
        }
        this.orders = orders;
    }

    // other fields / getters / setters
}

@Entity
public …
Run Code Online (Sandbox Code Playgroud)

java entity-relationship jpa one-to-many jpa-2.0

3
推荐指数
1
解决办法
2万
查看次数

如何在关系中设置主键?

我想知道如何正确地设置主键关系.例如,我们有ER图表,其中包含元素:

  • 关键属性
  • 弱键属性
  • 识别关系
  • 关联实体

为了将其转换为关系模型,我们应该做一些技巧.上述处理关系的主键,但所有的元素都在自然键 -所以我们可以把它们原样或更换代理键.
考虑一些情况.

情况1

密钥属性是一个名称 - 因此它必须是类型CHARVARCHAR.通常,名称成为关键属性.

案例2

两个(或更多)识别关系成为关系复合主键(由外键组成).

案例3

识别具有弱密钥属性的关系也成为复合主密钥.

案例4

关联实体通常具有两个或多个识别关系,因此它们是连接关系(连接表).

  • 如何为关系设置主键以处理所有上述情况(可能还有一些我没有提及的情况)?

  • 如何避免使用代理键以及在哪些情况下他们是必要的?

  • 如何设置主键的数据类型?

  • 如果必须将复合主键传递给子关系,是否应该用代理替换?

在我的视图中使用代理键的优点和缺点:

好处

  • 它们是紧凑的(通常是类型的INT),有时可以替代复合键

  • 当他们在外国钥匙时,他们是说明性的

  • 他们被无痛地编入索引

缺点

  • 他们是数字而且毫无意义.例如,我希望在我的界面应用程序中填写连接表 - 所以我将别无选择,只能将数字联系起来 …

database database-design entity-relationship relational-database database-schema

3
推荐指数
1
解决办法
1664
查看次数