Это мой t_complaint
Error # SQL-890_730 при создании ограничения в MySQL
CREATE TABLE `t_complaint` (
`idcomplaint` int(11) NOT NULL,
`tglterima` date DEFAULT NULL,
`dept` varchar(5) DEFAULT NULL,
`pengirim` varchar(255) DEFAULT NULL,
`kontak` varchar(255) DEFAULT NULL,
`email` varchar(255) DEFAULT NULL,
`telp` varchar(255) DEFAULT NULL,
`jenis` varchar(45) DEFAULT NULL,
`uraian` text,
`uniqueid` varchar(9) DEFAULT NULL,
`responder` varchar(245) DEFAULT NULL,
`tgljawab` date DEFAULT NULL,
`jawaban` text,
`status` varchar(45) DEFAULT NULL,
`tglclose` date DEFAULT NULL,
`createddate` datetime DEFAULT NULL,
`createdby` varchar(45) DEFAULT NULL,
`modifieddate` datetime DEFAULT NULL,
`modifiedby` varchar(45) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
и это t_complaint_detail
:
CREATE TABLE `t_complaint_detail` (
`no` int(11) NOT NULL,
`uniqueid` varchar(9) DEFAULT NULL,
`uploader` varchar(100) DEFAULT NULL,
`st_uploader` int(11) DEFAULT NULL,
`file_upload` text,
`original_name` text,
`status` int(11) DEFAULT '1'
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
- t_complaint.idcomplaint является первичным ключом с Auto Increment атрибут
- t_complaint_detail.no - первичный ключ с атрибутом Auto Increment
- Я хотел бы связал эти таблицы с помощью
uniqueid
- Я попытался
ALTER TABLE t_complaint_detail ADD CONSTRAINT fk_unique FOREIGN KEY ('uniqueid') REFERENCES t_complaint('uniqueid')
- Приведенный выше запрос дает ошибку. Ошибка
#1005 - Can't create table
BSM.
# SQL-890_730(errno: 150 "Foreign key constraint is incorrectly formed") (Details…)
bsm
в ошибке моя база данных (моя база данных BSM)
'un iqueid' varchar (9) DEFAULT NULL, замените varchar на int и проверите –
, но его значение - строка/текст. – ashura91
'uniqueid' является иностранным ключом здесь? правильно? –