一个表关联多个表的外键

原创 2006年06月10日 18:54:00

create database zhouhui
go
use zhouhui
go
create table customer 
(
  customerID int  primary key,
  customerName varchar(50) not null,
  address varchar(100) null, 
  linkMan char(20) null,
  tel char(20) null, 
  fax char(20) null,
  zipCode char(10) null, 
  customerRemark text null 
)
go

create table feeder  /*供货单位信息表*/
(
  feederID int not null primary key,  /*供货单位编号(主键)*/
 
  address varchar(100) null,  /*单位地址*/
  linkMan char(20) null,  /*联系人姓名*/
  tel char(20) null,  /*联系电话*/
  fax char(20) null,  /*传真号码*/
  zipCode char(10) null,  /*邮政编码*/
  feederRemark text null,  /*备注信息*/
)
go

 

/*建立库存信息数据表*/
create table storage  /*库存信息数据表*/
(
  storageID int not null primary key,  /*库存信息编号(主键)*/
 /* foreign key productID references product(productID),   /*货品编号(外键)*/ */
  depotName varchar(50) not null,   /*仓库名称*/ 
  productName varchar(50) not null,  /*货品名称*/
  spec varchar(50) null,  /*货品规格*/
  unit varchar(50) null,  /*计量单位*/
 )


/*建立出库信息数据表*/
create table sell  /*出库信息数据表*/
(
  sellID int not null primary key,  /*出库信息编号(主键)*/
  /*foreign key productID references product(productID),   /*货品编号(外键)*/ */
  customerName varchar(50) not null,  /*收货单位名称*/
  depotName varchar(50) not null,  /*仓库名称*/
  productName varchar not null,  /*货品名称*/
  quantity float not null,  /*货品数量*/
  unitPrice float not null,  /*货品单价*/
  payment float null,  /*总付款*/
  sellDate datetime null, /*出库日期*/
 )

go
/*建立入库信息数据表*/
create table stock  /*入库信息数据表*/
(
  stockID int not null primary key,  /*入库信息编号(主键)*/
 /* foreign key productID references product(productID),  /*货品编号(外键)*/*/
  feederName varchar(50) not null,  /*供货单位名称*/
  depotName varchar(50) not null,  /*仓库名称*/
  productName varchar(50) not null,  /*货品名称*/
  quantity float not null,  /*货品数量*/
  unitPrice float not null,  /*货品单价*/
  stockDate datetime null, /*入库日期*/
)

/*建立仓库信息数据表*/
create table depot  /*仓库信息表*/
(
  depotID int not null primary key,  /*仓库编号(主键/自动编号)*/
  depotName varchar not null,  /*仓库名称*/
  address varchar not null,  /*仓库位置*/
  principal varchar not null,  /*仓库负责人*/
  
)

create table product  /*货品信息数据表*/
(
  productID int not null primary key, /*货品编号(主键/自动编号)*/
  customerID int,  /*收货单位编号(外键)*/
  feederID int,  /*供货单位编号(外键)*/
  storageID int,  /*库存信息编号(外键)*/
  depotID int ,  /*仓库编号(外键)*/
  productName varchar(50) not null,  /*货品名称*/
  productClass varchar(50) not null, /*货品分类*/
  productSpec varchar(50) not null, /*货品规格*/
  unit varchar(50) null, /*计量单位*/
  minSto float not null,  /*底线库存*/
  maxSto float not null /*高线库存*/
 foreign key  ([customerID]) references [dbo].[customer] ([customerID]),
 foreign key ([feederID]) references [dbo].[feeder] ([feederID]),
 foreign key([storageID]) references [storage]([storageID]),
 foreign key([depotID]) references [depot]([depotID])
)

 

相关文章推荐

hibernate 共享的主键关联(多个表共享一个主键)

共享的主键关联:  由主键关联而相关的两张表中的行共享相同的主键值。这种方法的主要困难在于,确保被关联的  实例在保存对象时分配了相同的主键值。  第一步:用xml映射主键关联  ...

SQL语法整理[2]——用主外键实现表关联及数据库管理

SQL语法整理[2]——用主外键实现表关联及数据库管理 用主外键实现表关联 主键 主键是表中的一列或者多列数据,用来惟一标识一行数据.在表中,不允许有主键相同的行存在.在受主键约束的列中,不能有...

【数据库】 主键,外键,主表,从表,关联表,父表,子表

一、前言     在数据库设计中,hibernate,iBatis等ORM框架的使用中经常听说主键,外键,主表,从表,关联表,父表,子表之类的术语,弄懂它们之前的区别与联系对于数据库设计和O...

主键,外键,主表,从表,关联表,父表,子表

一、前言     在数据库设计中,Hibernate,iBatis等ORM框架的使用中经常听说主键,外键,主表,从表,关联表,父表,子表之类的术语,弄懂它们之前的区别与联系对于数据库设计和...

浅析【数据库】 主键,外键,主表,从表,关联表,父表,子表

一、前言在数据库设计中,hibernate,iBatis等ORM框架的使用中经常听说主键,外键,主表,从表,关联表,父表,子表之类的术语,弄懂它们之前的区别与联系对于数据库设计和ORM框架的学习使用是...

关于linux下使用phpmyadmin给mysql表关联外键的问题和解决办法

今天使用phpmyadmin关联外键的时候一直报错 #1452 - Cannot add or update a child row: a foreign key constraint fails...

Android ORMLite框架入门用法教程二(两张表关联外键)

一、今天主要是对上一篇Android ORMLite框架入门用法教程一的深入了解,上一篇主要是介绍单表的操作,今天介绍一下多表操作,今天用的是两张表,一张user表,一张article表,articl...

mappedBy和JoinColumn实质上指向的是同一个表即外键作为主键所在的表对应的实体

@Entity(name="DFSSTUDENT") @Table(name="DFSSTUDENT") @SuppressWarnings("serial") public class Dfsstu...
  • bestcxx
  • bestcxx
  • 2016年06月27日 18:08
  • 1037

外键必须是另一个表的主键吗

不一定是主键,但必须是唯一性索引。 主键约束和唯一性约束都是唯一性索引。 FOREIGN KEY 约束 SQL Server 2008 其他版本 ...
  • haiross
  • haiross
  • 2015年12月30日 16:16
  • 18917
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:一个表关联多个表的外键
举报原因:
原因补充:

(最多只允许输入30个字)