mysql - 一个表可以有两个外键吗?

标签 mysql database foreign-keys primary-key

我有以下表格(粗体中的主键。斜体中的外键)

客户表

  • ID---姓名---余额---Account_Name---Account_Type

账户类别表

  • Account_Type----余额

客户详细信息表

  • 账户名---名字----姓氏---地址

我可以在 Customer 表中有两个外键吗?如何在 MySQL 中实现?


更新

我正在为最终项目开发一个基于网络的会计系统。

帐户类别

账户类型--------------余额

Assets
负债
股权
费用
收入

Assets

  • Assets ID----- Assets 名称----余额----账户类型

应收账款

  • Receivable_ID--Receivable Name-----Address--------Tel-----Asset_ID-- --账户类型

应收账款

  • Transaction_ID----描述----金额--- 余额----应收账款_ID---- Assets _ID---账户类型

我使用软件绘制了 ER(实体关系)图,当我指定关系时,它会自动添加 多个外键,如上所示。设计不够好?

最佳答案

create table Table1
(
  id varchar(2),
  name varchar(2),
  PRIMARY KEY (id)
)


Create table Table1_Addr
(
  addid varchar(2),
  Address varchar(2),
  PRIMARY KEY (addid)
)

Create table Table1_sal
(
  salid varchar(2),`enter code here`
  addid varchar(2),
  id varchar(2),
  PRIMARY KEY (salid),
  index(addid),
  index(id),
  FOREIGN KEY (addid) REFERENCES Table1_Addr(addid),
  FOREIGN KEY (id) REFERENCES Table1(id)
)

关于mysql - 一个表可以有两个外键吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9696571/

相关文章:

mysql - sql/mysql 在一个字段中搜索两个关键字

sql - 200K数据库查询结果耗时太长,提速提示?

mysql - 仅搜索 MySQL IN 语句中的第一个元素

php - 有没有办法检查多输入 radio ?

mysql - 这个 SQL 错误是什么意思?

sql - 如何返回数据库中现有表中某一行的特定列值?

java - 具有 "my type"列的数据库表

mysql - TRIGGER INSERT 问题

mysql - docker 、PHP-FPM、MySql : connection to a remote DB from container using an ssh tunnel

database - 加入标签表——我应该加入 PHP 还是数据库服务器?