Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 错误1822。未能添加外键约束_Mysql - Fatal编程技术网

Mysql 错误1822。未能添加外键约束

Mysql 错误1822。未能添加外键约束,mysql,Mysql,错误代码为1822。未能添加foring键约束。引用表“medico”中缺少约束“paciente_ifbk_1”的索引MySQL要求您在列定义之后添加索引、约束定义,您的表paciente是错误的 请看图片中的BNF 创建[临时]表[如果不存在]tbl\U名称 (创建_定义,…)#我非常感谢您提供的帮助,请查看Post code not link to image,这样您将获得更好的帮助,外键的引用列必须是主键或索引列。 CREATE DATABASE IF NOT EXISTS hospit


错误代码为1822。未能添加foring键约束。引用表“medico”中缺少约束“paciente_ifbk_1”的索引

MySQL要求您在列定义之后添加索引、约束定义,您的表
paciente
是错误的

请看图片中的BNF

创建[临时]表[如果不存在]tbl\U名称

(创建_定义,…)#我非常感谢您提供的帮助,请查看Post code not link to image,这样您将获得更好的帮助,外键的引用列必须是主键或索引列。
CREATE DATABASE IF NOT EXISTS hospital;
USE hospital;

CREATE TABLE IF NOT EXISTS Planta (
CodigoPlanta INT NOT NULL,
Especialidad VARCHAR(255) NOT NULL,
Camas VARCHAR(255) NOT NULL,
Habitaciones VARCHAR(255) NOT NULL,
constraint PK_CodigoPlanta PRIMARY KEY(CodigoPlanta)
);

INSERT INTO Planta VALUES ('1','Cardiología','5','2');
INSERT INTO Planta VALUES ('2','Maternidad','5','2');
INSERT INTO Planta VALUES ('3','Neurología','4','2');

CREATE TABLE IF NOT EXISTS Habitacion (
NumeroHabitacion VARCHAR(255) NOT NULL,
NumeroCamas VARCHAR(255) NOT NULL
);


INSERT INTO Habitacion VALUES ('1.1','3');
INSERT INTO Habitacion VALUES ('1.2','2');
INSERT INTO Habitacion VALUES ('2.1','2');
INSERT INTO Habitacion VALUES ('2.2','3');
INSERT INTO Habitacion VALUES ('3.1','2');
INSERT INTO Habitacion VALUES ('3.2','2');

CREATE TABLE IF NOT EXISTS Medico (
 NumeroColegiado VARCHAR(255) NOT NULL,
 Nombre VARCHAR(255) NOT NULL,
 Pacientes VARCHAR(255) NOT NULL,
 constraint PK_NumeroColegiado PRIMARY KEY(NumeroColegiado)
);

INSERT INTO Medico VALUES ('346','Alberto Escalona','2');
INSERT INTO Medico VALUES ('567','Sergio Cuevas','3');
INSERT INTO Medico VALUES ('846','Andrea Books','1');

CREATE TABLE IF NOT EXISTS Enfermero (
CodigoEnfermero VARCHAR(255) NOT NULL,
Nombre VARCHAR(255) NOT NULL,
Pacientes VARCHAR(255) NOT NULL,
constraint PK_CodigoEnfermero PRIMARY KEY(CodigoEnfermero)
);


INSERT INTO Enfermero VALUES ('426','Iván Pastor','1');
INSERT INTO Enfermero VALUES ('671','Sara Pérez','4');
INSERT INTO Enfermero VALUES ('749','Anabel Cuevas','2');

CREATE TABLE IF NOT EXISTS Paciente (
NumSeguridadSocial VARCHAR(255) NOT NULL,
Nombre VARCHAR(255) NOT NULL,
Direccion VARCHAR(255) NOT NULL,
DNI VARCHAR(255) NOT NULL,
MedicoAsignado VARCHAR(255) NOT NULL,
FOREIGN KEY (MedicoAsignado) REFERENCES Medico(Nombre),
Diagnostico VARCHAR(255) NOT NULL,
Tratamiento VARCHAR(255) NOT NULL,
NumeroHabitacion VARCHAR(255) NOT NULL,
FOREIGN KEY (NumeroHabitacion) REFERENCES Habitacion(NumeroHabitacion),
EnfermerosResponsables VARCHAR(255) NOT NULL,
FOREIGN KEY (EnfermerosResponsables) REFERENCES Enfermero(Nombre),
constraint PK_NumSeguridadSocial PRIMARY KEY(NumSeguridadSocial),
constraint PK_DNI UNIQUE(DNI)
);

INSERT INTO Paciente VALUES ('4242417','Carlos Mendoza','c/ 
Coslada','84739175J','Alberto Escalona, Sergio 
Cuevas','Esquizofrenia','Darse un agua','1.2','Sara Pérez, Iván Pastor');
INSERT INTO Paciente VALUES ('4953839','Javier Martín','c/ 
Arcoiris','28485964L', 'Sergio Cuevas','Dolor intenso en un dedo del 
pie','Amputación del dedo','2.2','Sara Pérez');
INSERT INTO Paciente VALUES ('9213813','Mónica Guillén','c/ 
Estambul','294758601S', 'Alberto Escalona, Andrea Books','Dolor de 
cabeza','Ibuprofeno','1.1','Sara Pérez, Anabel Cuevas');
INSERT INTO Paciente VALUES ('6438421','Jorge Chamborro','c/ 
Montecristo','827384918V', 'Sergio Cuevas','Dificultad 
respiratoria','Tomar ventolín','1.2','Sara Pérez, Anabel Cuevas');

/*Camas ocupadas*/
SELECT Habitacion.NumeroHabitacion, count(NumeroCamas) FROM Habitacion 
JOIN Paciente ON Habitacion.NumeroHabitacion = Paciente.NumeroHabitacion 
GROUP BY Habitacion.NumeroHabitacion;
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name
    (create_definition,...) # <- look here
    [table_options]
    [partition_options]

create_definition:
    col_name column_definition # <- column definitions
  | {INDEX|KEY} [index_name] [index_type] (key_part,...) # <- then the index, constraint definition
      [index_option] ...
  | {FULLTEXT|SPATIAL} [INDEX|KEY] [index_name] (key_part,...)
      [index_option] ...
  | [CONSTRAINT [symbol]] PRIMARY KEY
      [index_type] (key_part,...)
      [index_option] ...
  | [CONSTRAINT [symbol]] UNIQUE [INDEX|KEY]
      [index_name] [index_type] (key_part,...)
      [index_option] ...
  | [CONSTRAINT [symbol]] FOREIGN KEY
      [index_name] (col_name,...)
      reference_definition
  | check_constraint_definition