Я работаю над приложением для записи на прием в медицинском кабинете и хочу добавить события в календарь. Я хочу добавить в таблицу пациентов и в то же время добавить num_patient в таблицу rdv с помощью хранимой процедуры.
num_patient это внешний ключ в таблице rdv.
'rdv' это таблица событий:
CREATE TABLE rdv
(num_RDV
int (30) NOT NULL, debut_RDV
datetime (6) NOT NULL, fin_RDV
datetime (6) NOT NULL, num_m
int (30) DEFAULT NULL, num_patient
int (30) NOT NULL)
Ограничения для таблицы rdv
:
ALTER TABLE rdv
ADD CONSTRAINT patient _rdv
FOREIGN KEY ( num_patient
) ССЫЛКИ patients
(num_patient
), ДОБАВИТЬ ОГРАНИЧЕНИЕ secretaire_rdv
ИНОСТРАННЫЙ КЛЮЧ (num_m
) ССЫЛКИ secretaire
(num_m
); COMMIT;
таблица 'пациента':
CREATE TABLE patients
(num_patient
int (30) NOT NULL, nom_complet_pat
varchar (30) NOT NULL, cin_patient
varchar ( 15) DEFAULT NULL, dateNaiss_patient
varchar (15) DEFAULT NULL, adresse_patient
varchar (30) DEFAULT NULL, telephone_patient
int (20) DEFAULT NULL, sexe_patient
varchar (20) DEFAULT NULL)
процедура для добавления событий:
СОЗДАТЬ ПРОЦЕДУРУ insertData
(IN name
VARCHAR (30), IN startt
DATETIME (6), IN endd
DATETIME (6)) НАЧАТЬ ВСТАВИТЬ INTO пациентов ( nom_complet_pat) VALUES (имя); INSERT INTO rdv (debut_RDV, fin_RDV, num_patient) VALUES (startt, endd, (ВЫБРАТЬ num_patient ИЗ пациентов, ГДЕ nom_complet_pat = name)); END
сообщение об ошибке:
Синтаксическая ошибка рядом с 'INSERT INTO rdv (debut_RDV, fin_RDV, num_patient) VALUES (debut, fin, (SELECT num_patient FROM пациента WHERE nom_complet_pat = name)) в ligne 2