0
我正在處理放在在線服務器(Linux)上的數據庫。我不得不對這個數據庫做很大的修改,所以我把這個數據庫移動到了我創建的本地數據庫(Windows Server)。是否可以在另一臺服務器上導入我的數據庫?
這最後的日子工作在本地數據庫中後,我決定,這項工作已經完成,所以我導出的本地數據庫並將其導入到活的,但我不能。它給了我與外鍵錯誤:
#1215 - Cannot add foreign key constraint
表phpmyadmin
說,這是一個具有一定的誤差爲printprices
,這些都是在創建表我有printprices
並可能有一些關係到其他表錯誤:
CREATE TABLE `printprices` (
`STYLE` int(11) NOT NULL DEFAULT '0',
`DIFICULTAD` int(11) NOT NULL DEFAULT '0',
`NCOLORES` int(11) NOT NULL DEFAULT '0',
`PROVEEDOR` int(11) NOT NULL DEFAULT '0',
`SIZECM2MAX` int(11) NOT NULL DEFAULT '0',
`MINQ` int(11) NOT NULL,
`MAXQ` int(11) NOT NULL,
`PRECIO` decimal(5,2) DEFAULT '0.00',
`PRECIOPRV` decimal(5,2) DEFAULT '0.00',
`MINWORK` decimal(5,2) DEFAULT '0.00',
`MINWORKPRV` decimal(5,2) DEFAULT '0.00',
PRIMARY KEY (`STYLE`,`DIFICULTAD`,`NCOLORES`,`PROVEEDOR`,`SIZECM2MAX`,`MINQ`),
KEY `FK_PRINT` (`STYLE`,`DIFICULTAD`,`NCOLORES`,`PROVEEDOR`),
CONSTRAINT `FK_PRINT` FOREIGN KEY (`STYLE`, `DIFICULTAD`, `NCOLORES`, `PROVEEDOR`) REFERENCES `print` (`STYLE`, `DIFICULTAD`, `NCOLORES`, `PROVEEDOR`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8
CREATE TABLE `print` (
`STYLE` int(11) NOT NULL DEFAULT '0',
`DIFICULTAD` int(11) NOT NULL DEFAULT '0',
`NCOLORES` int(11) NOT NULL DEFAULT '0',
`PROVEEDOR` int(11) NOT NULL DEFAULT '0',
`CFC` decimal(5,2) DEFAULT '0.00',
PRIMARY KEY (`STYLE`,`DIFICULTAD`,`NCOLORES`,`PROVEEDOR`),
KEY `FK_PRINTPROV` (`PROVEEDOR`),
KEY `FK_PRINTSTYLE` (`STYLE`),
CONSTRAINT `FK_PRINTPROV` FOREIGN KEY (`PROVEEDOR`) REFERENCES `proveedores` (`CODIPRV`) ON DELETE CASCADE,
CONSTRAINT `FK_PRINTSTYLE` FOREIGN KEY (`STYLE`) REFERENCES `printstyle` (`CODISTY`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8
CREATE TABLE `printstyle` (
`CODISTY` int(11) NOT NULL AUTO_INCREMENT,
`STYLE` varchar(30) DEFAULT NULL,
PRIMARY KEY (`CODISTY`)
) ENGINE=InnoDB AUTO_INCREMENT=22 DEFAULT CHARSET=latin1
CREATE TABLE `proveedores` (
`CODIPRV` int(11) NOT NULL AUTO_INCREMENT,
`PROVEEDOR` varchar(20) DEFAULT NULL,
`ENVIOPRICE` decimal(4,2) NOT NULL DEFAULT '0.00',
`CARTONPRICE` decimal(4,2) NOT NULL DEFAULT '0.00',
`LIMITPRICE` decimal(6,2) NOT NULL,
PRIMARY KEY (`CODIPRV`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1
運行命令「SHOW ENGINE INNODB STATUS」並檢查「國外最新KEY ERROR」領域,報告可以看到有什麼。它可能會幫助你或我們發現問題! – Sevle
我很迷茫,我從來沒有這樣做過。 – danibg
在您的phpmyadmin界面中,轉至「SQL」選項卡並編寫「SHOW ENGINE INNODB STATUS」。然後點擊「選項」並選中「全文」選項。最後點擊「GO」。如果您嘗試在同一會話中導入表格,並且出現'1215'錯誤,則會出現「最新的外鍵錯誤」字段,該字段將提供有關該錯誤的更多信息。 – Sevle