Maison  >  Questions et réponses  >  le corps du texte

mysql - Comment résoudre le problème selon lequel deux tables se réfèrent l'une à l'autre en tant que clés étrangères dans une table de base de données

J'ai deux tables, l'une est la table des employés et l'autre est la table des départements.

Évidemment, le numéro de responsable doit utiliser le numéro d'employé dans la table des employés comme référence de clé étrangère, et le numéro de département dans la table des employés doit utiliser le numéro de département dans la table des départements comme référence de clé étrangère.

En conséquence, il y aura un conflit entre les deux tables étant des références de clé étrangère l'une à l'autre. Comment le résoudre ?

伊谢尔伦伊谢尔伦2689 Il y a quelques jours1123

répondre à tous(2)je répondrai

  • 女神的闺蜜爱上我

    女神的闺蜜爱上我2017-06-08 11:05:31

    La structure de la table est déraisonnable !

    la table des couleurs jue devrait être ajoutée

    Ajouter des champs de rôle à la table des employés

    Liste des personnages

    id Nom du personnage
    1 Gérant
    2 Secrétaire
    3 Chien qui bouge des briques

    Liste des employés

    id Personnage Département Nom
    1 1 1 Gérant
    2 2 1 Xiaomi
    3 3 1 Disi

    Table du département

    id Nom du département
    1 Ministère de l'Industrie
    2 Département des affaires
    3 Département R&D

    répondre
    0
  • 迷茫

    迷茫2017-06-08 11:05:31

    Pourquoi la « référence mutuelle de clé étrangère » est-elle une contradiction ?

    Si vous souhaitez ajouter un nouveau service et que le responsable de ce service est également une nouvelle personne, vous pouvez d'abord utiliser un ancien employé pour « agir » en tant que responsable, puis le modifier une fois l'ajout réussi. Par exemple, l'ajout d'un nouveau service financier et du nouveau responsable Zhang San :

    insert into 部门表 select id=财务部, manager=老王
    insert into 职工表 select id=张三, department=财务部
    update 部门表 set manager=张三 where id=财务部

    La question suivante est : comment ajouter lorsque les deux tables sont vides ? À ce stade, vous pouvez d'abord ajouter une ligne de données, puis ajouter les contraintes de clé étrangère.

    répondre
    0
  • Annulerrépondre