主外键关联法
比如:
货物类别表A和货物类B的关系是:一个类别下有多个货物
A表结构:
类别ID(A表主键)
类别名称
B表结构:
货物ID(B表主键)
货物类别ID(外键,references
A(类别ID))
货物名称
将这两个表加入到某一个数据库中,设置“一方”的表建立主索引,“多方”的表建立同一字段的的普通索引,打开数据库设计器,从“一方”表的此字段按左键拖到“多方”表的此字段,这时会出现一条黑线,此时一对多永久关系建立完毕。
一对多,其实并不一定要做约束,我更倾向于业务上的一对多。
一对多的基本概念是。子表依赖于主表的主键。每条主表的记录,会对应子表上一到多条记录。
主键是基于本表字段的约束,是唯一约束。
外键是子表基于主表主键的约束,不是唯一约束,但要求必须主表有相应的记录,子表才可以插入数据。
一对多的关系是数据库中最常见的关系,意思是一条记录可以和其他很多表的记录建立关系。举一个例子,一个客户可以有多个订单,那么这种关系就是一对多的关系。那么我们怎样在数据库中表示这种关系呢?一对多的关系就是在一个数据表中的主键和另一个数据表中的非主键建立的关系。
步骤/方法
在access对象面板中,打开你想要建立关系的数据表。方法是先选中他们
右键单击你选中的表,然后在右键菜单中,点击设计视图。
在设计视图中,点击菜单栏上面的数据库工具
在数据库工具中,点击 关系按钮。
在关系选项中,我们在空白的位置右键单击,然后选择 显示表。
在显示表的对话框中,我们选中订单和客户的两个表,然后点击添加。
添加完毕以后点击关闭按钮。
接着我们拖动订单表中的 客户ID到客户表中的 客户ID
d出了编辑关系的对话框,我们可以看到下面最下方有一个关系类型,关系类型为一对多。点击创建即可。
点击菜单栏上面的保存按钮即可保存关系了。
图中都是器材号对应器材号,肯定是一对一的,因为一种器材只有一个器材号。
一对多的例子:如果"器材采购表"中的主键设为供货方,并且一种器材有不止一个供货方时,这样的对应才是一对多的关系。建议你把"器材采购表"中的主键修改成其他字段试试。
//老公
class Husband implements javaioSerializable{
private Integer id;
private String name;
private Set<Wife> wifes;//一个老公能拥有多个老婆
}
//老婆
class Wife implements javaioSerializable{
private Integer id;
private String name;
}
/
create table Husband{
id int primary key,
name varchar
}
create table Wife{
id int primary key,
name varchar ,
h_id int 外键
}
/
怎样在数据库中实现一对多的关系
良好的数据库设计都是要符合第三范式或者更加严格一些,所以多对多是一种比较不好的设计方案,会对系统的开发和维护造成很大困难,特别是代码上,要重复的比较各个键值,因此都是采用引入关系表的方法,将两个表的主键提取作为关系表的字段,然后关系表中设置游动主键,这样就将多对多的关系解耦成1对多的关系
以上就是关于数据库中怎么设计一对多的问题全部的内容,包括:数据库中怎么设计一对多的问题、在VF数据库中创建表间一对多关联的步骤、数据库一对多怎么建立主外键的区别是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)