यहां आप गलत संदर्भ का संदर्भ दे रहे हैं REFERENCES users(from_uid)
अंतिम तालिका में।
FOREIGN KEY(from_uid) REFERENCES users(from_uid)
from_uid
users
से संबंधित नहीं है
यह होना चाहिए
FOREIGN KEY(from_uid) REFERENCES users(uid)
आपकी playLists table
चार स्तंभों का प्राथमिक कुंजी संयोजन है, इसलिए आपको इन सभी चार स्तंभों को u_share_pl table
में forieng कुंजी के रूप में आपूर्ति करनी चाहिए ।
संदर्भ के रूप में एक और समग्र कुंजी एक ही बाधा होनी चाहिए जैसे
FOREIGN KEY(from_uid,sid,plname,plmdate,plmtime) REFERENCES playlists(uid,sid,plname,plmdate,plmtime)
आपकी आखिरी टेबल क्रिएट होनी चाहिए:
CREATE TABLE u_share_pl(
uid INT NOT NULL,
from_uid INT NOT NULL,
sid INT NOT NULL,
plname VARCHAR(20) NOT NULL,
plmdate DATE NOT NULL,
plmtime TIME NOT NULL,
PRIMARY KEY(uid, from_uid, plname, plmdate, plmtime),
FOREIGN KEY(uid) REFERENCES users(uid),
FOREIGN KEY(from_uid,sid,plname,plmdate,plmtime) REFERENCES playlists(uid,sid,plname,plmdate,plmtime)
);