Tôi đang tạo một bảng mới bên trong mysql và tôi đang cố gắng thêm ràng buộc khóa ngoài vào một trong các trường.Biến mất các khoá ngoại trong phpMyAdmin
CREATE TABLE `onlineorder` ( `receiptid` varchar(10) NOT NULL default '', `delivereddate` date default NULL, `cid` int(10) NOT NULL, `card#` int(10) default NULL, `expire` date default NULL, PRIMARY KEY (`receiptid`), FOREIGN KEY (receiptid) REFERENCES purchase ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Tuy nhiên, sau khi tạo, tôi vào phpMyAdmin và xuất bảng. và có vẻ như ràng buộc khoá ngoại đã biến mất.
CREATE TABLE `onlineorder` ( `receiptid` varchar(10) NOT NULL default '', `delivereddate` date default NULL, `cid` int(10) NOT NULL, `card#` int(10) default NULL, `expire` date default NULL, PRIMARY KEY (`receiptid`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Có phpMyAdmin loại bỏ các khóa lạ hoặc tôi đang làm điều gì sai ở đây không?
ngay cả với InnoDB việc xuất khẩu không bao gồm phím nước ngoài. (đối với tôi) – sdfor
ok Tôi đã tìm ra. dưới quan điểm quan hệ, tôi đã thêm khóa foriegn vào cột quan hệ nội bộ. lỗi của tôi. nó sẽ được nhập vào cột tiếp theo. – sdfor
Đồng ý, đó là một cách khủng khiếp để mã hóa nó. –