Иногда, когда я выключаю локальный сервер xampp, некоторые данные «используются», и я не могу их открыть или удалить.Поэтому я выбираю последнюю резервную копию и сбрасываю базу, что невозможно из-за используемых таблиц.
Так что в stackoverflow некоторые парни сказали, что нужно вручную удалить данные mysql в папке phpmyadmin ibd и frm.И затем я пытаюсь импортировать свою резервную копию, и они говорят: «Внешний ключ неправильно сформирован.
Когда я перехожу к деталям, он показывает этот текст:
ПОСЛЕДНЯЯ ОШИБКА ИНОСТРАННОГО КЛЮЧА
2019-05-15 17:09:40 1c6c Ошибка в ограничении внешнего ключа таблицы service_tunnels / se_situer_a: в таблице нет индекса, который бы содержал столбцы в качестве первых столбцов, или типы данных в таблице не соответствуютв указанной таблице или в одном из столбцов ON ... SET NULL объявляется как NOT NULL.Вот часть sql для размещения таблиц и таблицы se_situer_a:
DROP TABLE IF EXISTS `emplacement`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `emplacement` (
`IDEmplacement` int(11) NOT NULL,
`NomEmplacement` varchar(50) COLLATE latin1_general_ci DEFAULT NULL,
`PointKilometrique` float DEFAULT NULL,
`NumLocal` int(11) NOT NULL,
`CodeOuvrage` varchar(25) COLLATE latin1_general_ci NOT NULL,
PRIMARY KEY (`IDEmplacement`,`NumLocal`,`CodeOuvrage`),
KEY `FK_Emplacement_CodeOuvrage` (`CodeOuvrage`),
CONSTRAINT `FK_Emplacement_CodeOuvrage` FOREIGN KEY (`CodeOuvrage`) REFERENCES `ouvrage` (`CodeOuvrage`),
CONSTRAINT `FK_Emplacement_NumLocal` FOREIGN KEY (`NumLocal`) REFERENCES `local` (`NumLocal`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS `se_situer_a`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `se_situer_a` (
`DateMiseEnPlace` date DEFAULT NULL,
`DateEnlevement` date DEFAULT NULL,
`IDEquipement` int(11) NOT NULL,
`DateEmplacement` date NOT NULL,
`IDEmplacement` int(11) NOT NULL,
`NumLocal` int(11) NOT NULL,
`CodeOuvrage` varchar(25) COLLATE latin1_general_ci NOT NULL,
PRIMARY KEY (`IDEquipement`,`DateEmplacement`,`IDEmplacement`,`NumLocal`,`CodeOuvrage`),
KEY `FK_Se_situer_a_DateEmplacement` (`DateEmplacement`),
KEY `FK_Se_situer_a_IDEquipement` (`IDEquipement`),
KEY `FK_Se_situer_a_CodeOuvrage` (`CodeOuvrage`),
CONSTRAINT `FK_Se_situer_a_CodeOuvrage` FOREIGN KEY (`CodeOuvrage`) REFERENCES `ouvrage` (`CodeOuvrage`),
CONSTRAINT `FK_Se_situer_a_DateEmplacement` FOREIGN KEY (`DateEmplacement`) REFERENCES `dateemplacement` (`DateEmplacement`),
CONSTRAINT `FK_Se_situer_a_IDEmplacement` FOREIGN KEY (`IDEmplacement`) REFERENCES `emplacement` (`IDEmplacement`),
CONSTRAINT `FK_Se_situer_a_IDEquipement` FOREIGN KEY (`IDEquipement`) REFERENCES `equipement` (`IDEquipement`),
CONSTRAINT `FK_Se_situer_a_NumLocal` FOREIGN KEY (`NumLocal`) REFERENCES `local` (`NumLocal`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
Большое спасибо заранее, я не могу найти, почему это происходит каждый раз, когда я перезагружаю свой компьютер, так что перезагрузите xampp ...