为什么我无法在表member_details和committee_member上创建MySQL关系[重复]

问题描述 投票:0回答:1

Relationship view of my Database strong text

我有如图所示的关系,但是当我从 Member_details 更新 member_name 时,

committee_memba
等其他表不会更新,在创建关系之前,我在数据库(Hr_system)上运行了以下更新查询

SET GLOBAL FOREIGN_KEY_CHECKS=0;

我的

committee_memba
表结构如下:

CREATE TABLE `committee_memba` 
(
  `ID` int(11) NOT NULL AUTO_INCREMENT,
  `Committee_name` varchar(150) NOT NULL,
  `Member_name` varchar(250) NOT NULL,
  `Rank` varchar(100) NOT NULL,
  `Active` varchar(6) NOT NULL DEFAULT 'No',
  PRIMARY KEY (`ID`),
  UNIQUE KEY `Committee_name` (`Committee_name`,`Member_name`)
) ENGINE=InnoDB AUTO_INCREMENT=193 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci

和桌子

Member_details

CREATE TABLE `member_details` 
(
  `Name` varchar(250) NOT NULL,
  `IDNo` int(10) NOT NULL,
  `Phone` varchar(15) NOT NULL,
  `Gender` varchar(8) NOT NULL,
  `TaxRate` float NOT NULL,
  `Bank_Name` varchar(125) NOT NULL,
  `NHIF` varchar(20) NOT NULL,
  `NSSF` varchar(20) NOT NULL,
  `KRA` varchar(11) NOT NULL,
  `Active` varchar(5) NOT NULL,
  `Bank_account` varchar(30) NOT NULL,
  PRIMARY KEY (`Name`,`IDNo`,`Phone`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci

When I try to create a relationship, I get the error..(Image 2)

mysql phpmyadmin xampp
1个回答
0
投票

您需要通过运行启用外键

SET GLOBAL FOREIGN_KEY_CHECKS=1; 

您使用

禁用了外键检查
SET GLOBAL FOREIGN_KEY_CHECKS=0;

因此对引用列所做的更改不会级联到相关表

© www.soinside.com 2019 - 2024. All rights reserved.