30-11-2005, 09:05
|
|
|
חבר מתאריך: 20.12.01
הודעות: 20,962
|
|
לא, אבל אני יכול להסביר לך איך לבנות אחד
בעקרון אתה זקוק לשתי טבלות:
טבלה ראשונה שבה תאחסן את הערכים של הצמתים בעץ. בטבלה הזו יהיו 2 או יותר
שדות: שדה ID, שיהיה גם המפתח הראשי של הטבלה, ושדה נוסף(או יותר, לפי הצורך
שלך) שיאחסן את המידע ששמור באותו צומת;
טבלה שניה, שתגדיר את מבנה העץ. בטבלה הזו יהיו 3 שדות: ID-צומת-אב, ID-בן-ימני,
ID-בן-שמאלי. אתה צריך לקבוע עוד כמה פרטים טכניים כדי שכל העסק יפעל, לדוגמה,
מה לכתוב אם אין בן מסויים(אתה יכול להשתמש בשדה ריק, להכניס מינוס אחד, או כל
דבר אחר).
למען האמת, המבנה הזה לא הכי מנורמל(בעקרון, אם יש שדות ריקים - הגורם הוא עיצוב
גרוע). הדרך הנכונה יותר תהיה שימוש בשתי טבלות להגדרת מבנה העץ, במקום באחת:
טבלת בנים-ימניים(עם שדות: ID-אב ו-ID-בן-ימני) וטבלת-בנים שמאליים(עם שדות: ID-אב
ו-ID-בן-שמאלי). בשתי הטבלות צירוץ שני השדות יהווה מפתח ראשי, ו-ID-אב מפתח זר,
כמובן.
בהצלחה.
|