sql >> Databasteknik >  >> RDS >> Mysql

MySQL främmande nyckel vid radering

Ja det är möjligt. Du bör göra FK i UserStaff-tabellen. På detta sätt:

Användartabell

CREATE TABLE `User` (
  `Id` int(11) NOT NULL AUTO_INCREMENT,
  `Name` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Användarpersonaltabell

CREATE TABLE `UserStaff` (
  `Id` int(11) NOT NULL AUTO_INCREMENT,
  `UserId` int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (`Id`),
  KEY `UserId` (`UserId`),
  CONSTRAINT `UserStaff_ibfk_1` 
    FOREIGN KEY (`UserId`) 
    REFERENCES `User` (`Id`) 
    ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


  1. fortsätt att få ett syntaxfel (php / mysql)

  2. Snabbskript som returnerar alla egenskaper från SERVERPROPERTY() i SQL Server 2017/2019

  3. Hur man installerar Neo4j på Ubuntu 20.04

  4. Infoga SQL Server-data i Salesforce.com