שאלה לאלופים באקסס (או SQL)...

hareld

New member
שאלה לאלופים באקסס (או SQL)...

יש לי טבלא ראשית הנקראת "קורסים" באחד מן השדות מצוי ערך הנקרא "פורמט" המעיד על פורמט של שאלון לקורס. (הפורמטים מסווגים במספרים מ-1 עד 3). כאשר המשתמש מוסיף קורס חדש (כלומר שורה חדשה) צריכה להיבנות טבלא חדשה בפורמט קבוע. הפורמט צריך להקבע על פי הנתונים בשדה "פורמט". כלומר: אם השדה "פורמט"=1 תווצר טבלא עם שדות מסויימים, ואם השדה יהיה =2 תתווסף טבלא חדשה עם שדות שונים. שמם של הטבלאות הללו צריך להקבע על פי נתונים שנמצאים בטבלת הקורסים. בסוף התהליך צריכים להיות טבלאות כמספר השורות בטבלא "קורסים" + הטבלא עצמה. אין לי מושג אין לכתוב את זה (לדעתי צריך SQL)... עזרו לי! אני נואש!
 

zivsh103

New member
מה מטרת התרגיל?

(מה שכתבת זה הפתרון וקשה לענות כי לא ברור מה אתה מתכוון לעשות)
 

hareld

New member
הבהרה....

אני אסביר את עצמי טוב יותר: אני עובד כרגע בחברה שבה מעבירים קורסים לימודיים בנושאים שונים. כאשר כל קורס מסתיים מעבירים בין החניכים טופס משוב מפורט ביותר על הנושאים שנלמדו בקורס. כרגע, אנחנו עובדים מיליון טבלאות באקסל (לכל קורס טבלא + טבלא שמכילה מתי מסתיים ומתחיל כל קורס). אני רוצה לייעל את העבודה בכך שאני יעביר למעשה את כל העבודה לפורמט על אקסס. למעשה אני רוצה להגיע למצב בו המשתמש מכניס קורס כלומר: תאריך סיום והתחלה, פרטים שונים, ופורמט שאלון (סוג השאלון נקבע ע"י הרבה פרמטרים חוץ מסוג הקורס) וכאשר הקורס מסתיים צריך להכניס את נתוני המשובים שהתקבלו. איתם ניתן לבצע חשובים שונים ולדלות נתונים בשניות ולא בימים. אני חשבתי ליצור טבלא שבה יהיו נתוני הקורסים וכל פעם שיסגר קורס (התאריך יגיע לתאריך הסיום) תפתח טבלא חדשה שתייצג את המשוב שמתקבל מן החניכים. עצות, חידושים, הערות, הארות יתקבלו בברכה... תודה :)
 

zivsh103

New member
תשובה

נראה לי שאתה צריך טבלת קורסים (שיש לך כבר) שבה לכל קורס יהיה מזהה יחודי (קוד שהוא המפתח) ועוד שדות נתונים (תאריך פתיחה, סיום, קוד שאלון...) בנוסף הכן 3 טבלאות חדשות עבור כל מבנה משוב. המפתח יהיה קוד קורס וקוד חניך (או מספר זהות) ושאר העמודות יהיו הציון במשוב לשאלות השונות. בזמן הזנת שורה חדשה בטבלה כזו בדוק בעזרת קוד-קורס מול טבלת קורסים שתאריך סיום מוזן-כך לא יהיה ניתן להזין משוב לפני סיום קורס. כך תייצר נתונים (ולא טבלאות). כל הנתונים יהיו בטבלה לצרכי ניתוח. בהצלחה.
 

hareld

New member
תודה לכולם... אבל...

הבעיה שיש הרבה משובים בפורמטים שונים ככה שאני לא יכול ליצור 2 טבלאות של "קורסים" ו-"משובים". כמו כן, אני צריך ליצור ממשק ידידותי למשתמש (כי מי ישתמש במה שאני יעשה אין לו מושג בגרוש במחשבים). הייתי רוצה למצוא איזושהי דרך קצרה חביבה ופשוטה לפתרון הסוגייה הזו. אני אפרט בקיצור את הבעיה: ישנם קורסים שונים, בסוף כל קורס מעבירים בין בהחניכים טופס משוב (אותי מעניין רק הציונים הסופיים לאחר שכלול). לכל קורס טופס משוב שונה (כלומר שדות שונים). אני רוצה לבנות מסד נתונים שירכז את כל המידע מהמשובים.
 

hareld

New member
עוד משהו קטן... (סליחה.)

עוד בעיה שחשבתי עליה היא ה-דוחות. כיצד להפיק דוחות בלי ליצור דוח לכל סוג של שאלון. ובעיה נוספת: כיצד המשתמש יוכל להוסיף עוד סוגי שאלונים... תודה... ועוד "מחשבות" בהמשך...
 

zivsh103

New member
תשובה...

בשאלה המקורית כתבת שיש 3 פורמטים. נניח כמו עכשיו שיש הרבה ויכולים גם להתווסף עוד בעתיד. כמו כן צור טבלת "משובים" שהמפתח הוא קוד משוב (יחודי לכל משוב במבנה מסוים). שאר העמודות הן quest1, quest2, quest3... שהן עמודות text עם המלל של כל אחת מהשאלות. (יהיו בה 50 עמודות, בהנחה שאין אף פעם יותר מ 50 שאלות במשוב). ועמודת שם שאלון (שתוצג למשתמש במסך). עכשיו תיצור טבלה אחת "תשובות-למשובים" עם למשל 50 עמודות: ans1, ans2, ans3... (בהנחה שאין אף פעם יותר מ 50 שאלות במשוב). והמפתחות הם קוד קורסת קוד משוב. שאלונים ניתן להוסיף בטבלת "משובים" ע"י הוספת שורה חדשה (דרך ממשק) המסך להזנת הציונים: המשתמש יבחר שאלון משוב והמסך ייצר טבלה (עפ"י הקוד) שבעמודה הראשונה יהיו השאלות (מטבלת משובים) ובעמודה השניה מקום להזין ציון משוכלל לשאלה. בלחית enter תכניס את הקלט לטבלת "תשובות למשובים"). במשך הזמן יהיו בטבלה זו הרבה שורות לכל קוד-משוב שאותן ניתן לנתח.
 

ariel10

New member
חצי אלוף

נגיד שיש 3 פורמטים לאחר עדכון השדה של הפורמט תכניס לEVENT CASE אם כתוב 1 תריץ שאילתה 1 ואם כתוב 2 תריץ שאילתה 2 ואם כתוב 3 תריץ שאילתה 3 וכד
 
למעלה