28-10-2008, 15:46
|
מנהל
|
|
חבר מתאריך: 26.07.08
הודעות: 6,473
|
|
ציטוט:
במקור נכתב על ידי iBot
...
כעת אני רוצה לעשות קישור ביניהם, כאשר הפוסטים הם אלו שנושאים מספר תגיות (לא להפך), וההתלבטות היא באיזה טבלה לשמור את המידע (אם בטבלה חדשה או בטבלת ההודעות עצמן), וכאשר אני שומר אתה מידע, באיזה סוג שדה (מה הסוג שדה של אותה עמודה, לדוגמא INT לא יתאים גם כי קשה לי להאמין שיהיה מספר ענק של תגיות וגם כי אני נותן N תגיות עבור כל הודעה).
חשוב לי להדגיש שיש מקרים בהם אני רוצה לשלוף פוסט בו יש 2 תגיות (נניח גם תגית תכנות וגם תגית עיצוב), ועל כן חשוב לי ההתייעצות הזאת.
...
|
אכן כמו שהצעתי קודם, טבלת קישור של רבים אל רבים יהיה מעולה...
בטבלה זו אין שום טור מסוג AUTO_INCREMENT (כלומר, אין צורך בטור כזה, אלא אם אתה רוצה ליצור טור נוסף של ה-id של הרשומה).
בטור אחד, שנקרא post_id, יהיה את ה-id של כל הפוסטים שיש להם תגית מסויימת.
בטור השני, label_id, יהיה את ה-id של התגית בטבלת התגיות.
אם אתה רוצה לקשר את תגית 3 להודעה 8, תצטרך להריץ את השאילתא:
קוד:
INSERT INTO tbl (post_id, label_id) VALUES (8, 3)
אם אתה רוצה לקשר להודעה 20 את התגיות 2 ו-5, תצטרך לכתוב:
קוד:
INSERT INTO tbl (post_id, label_id) VALUES (20,2), (20,5)
וכן הלאה... אם תרצה להוסיף להודעה 8 תגית נוספת שמספרה 14, תצטרך לכתוב פשוט:
קוד:
INSERT INTO tbl (post_id, label_id) VALUES (8, 14)
אם תרצה למחוק תגית מפוסט:
קוד:
DELETE FROM tbl WHERE post_id=8 AND label_id=14
ישראל: תודה על התיקון, שכחתי את השם המקצועי...
|