פורסם 2009 ביוני 1716 שנים אני צריך לעשות 2 דברים: 1)לאפס כל [grade] בטבלת grades שקטן מ [min grade] בטבלת subjects ע"פ קישור ה [subject] שמופיע ב grades. אני לא מצליח להשתמש בקישור הזה, כל מה שהצלחתי היה לגרום לכך שכל מה שקטן מה [min grade] הכי קטן יתאפס. 2)לעדכן את [new grade] בטבלת grades ע"פ מכפלה שלו ב [multiply] מטבלת subjects חלקי [hours] מטבלת courses. אני לא מצליח לעשות את זה כמו שצריך (במיוחד לא ע"פ נתונים ע"פ קשרי גומלין כמו ב1). זה דרש ממני כוחות נפשיים רבים להשפיל את עצמי ולכתוב לעזרה. תודה רבה [attachment deleted by admin]
פורסם 2009 ביוני 1816 שנים מחבר קריאה נואשת לעזרה כלשהי? אין פה אף אחד שיודע איך לעשות פעולה בסיסית כ"כ?
פורסם 2009 ביוני 1816 שנים נסה את זה (עבד לי יופי)update grades set grade = 0where grade < (select min_grade from subjects where grades.subject = subjects.subject)כמובן שזה יעבוד אך ורק אם אין ערכים כפולים של subject בטבלת subjects[br]פורסם בתאריך: 18.06.2009 בשעה 18:26:13תשובה לשאלה שניהupdate grades set new_grade = (select grade * multiply / hours from subjects,courses where courses.subject = subjects.subject and grades.subject = subjects.subject and grades.course = courses.course)
פורסם 2009 ביוני 1816 שנים מחבר לא עובד. בראשון הוא לא מזהה את min grade כערך מטבלה ומבקש להזין מספר ובשני הוא נותן ארור של "type mismatch in expression". אולי הייתי מנסה לפתור את הבעיה לבד אבל המוח כבר נזל לי מהאוזניים היום בצהריים כשניסיתי לפתור את העניין.help?תודה.
פורסם 2009 ביוני 2116 שנים איזה מסד נתונים זה???השאילתות עבדו לי על Oracle וגם SQL serverהשאילתה הראשונה כ"כ פשוטה שאין מצב שהיא לא עובדת וזה גם לפי ansi SQL
פורסם 2009 ביוני 2116 שנים טוב, יש לי אקסס 2007 אני מקווה שזה נכון לגבי כל הגרסאות השאילתא הראשונה היא זו UPDATE grades INNER JOIN subjects ON subjects.num=grades.subject SET grades.grade = 0 WHERE [grades].[grade]<[subjects].[min_grade]; [br]פורסם בתאריך: 21.06.2009 בשעה 11:40:25 הממ הייתי מראה לך איך השאילתא נראית בdesign view אבל משום מה לא מצליח לי העלות תמונה... בכל אופן זה הולך ככה בחרתי שאילתא מסוג update בשאילתא שמתי את טבלאות grades ו subjects והקישור הופיע באופן אוטומטי כצפוי בשדה Field שמתי את grade מתוך טבלת grades בשדה update to כתבתי 0 בשדה criteria כתבתי <[subjects].[min_grade] [br]פורסם בתאריך: 21.06.2009 בשעה 11:43:09 השאילתא השניה נראית משהו כזה UPDATE subjects INNER JOIN (courses INNER JOIN grades ON courses.course = grades.course) ON (subjects.num = grades.subject) AND (subjects.num = courses.subject) SET [grades].[new_grade] = [grades].[new_grade] * [subjects].[mutiply] / [courses].[hours];
פורסם 2009 ביוני 2116 שנים מחבר תודה רבה :-*! אני אבדוק את זה אח"כ ונראה.נורא מרגיזה אותי העובדה שאני חייב לעבוד עם אקסס בשביל הפרויקט לבגרות. יש פלטפורמות כ"כ יותר טובות...עריכה: הראשונה עובד מעולה אחרי כמה התאמות שכנראה נבעו מכך שלי יש גרסת 2003.בשנייה (אחרי התאמות גרסא בסיסיות) מוצגת לי הודעה כזו:Type mismatch in JOIN expression.מה זה אומר ואיך אני יכול לתקן את זה?זה Error 3615 אם זה משנה.תודה רבה![br]פורסם בתאריך: 21.06.2009 בשעה 14:43:00עדכון- עכשיו משום מה הוא לא קולט את multiply. יש מושג למה?זה הקוד:UPDATE subjects INNER JOIN (courses INNER JOIN grades ON courses.[course number] = grades.course) ON (subjects.num = grades.subject) AND (subjects.num = courses.subject) SET grades.[new grade] = grades.[new grade]*subjects.[mutiply]/courses.[hours];
פורסם 2009 ביוני 2116 שנים כנראה שלא כל שדות הjoin שוים בסוג שלהםלמשל אני חושב שauto number לא זהה ל numberלגבי שדה multiply שמתי לב שדיאגרמת יחסים (התמונה שצירפת) קראת לשדה multiplay אז תבדוק את האיות טוב טוב
פורסם 2009 ביוני 2216 שנים מחבר הבעיה שציינתי בנוגע לשגיאה נפתרה. הוא לא התייחס לשדה הנכון. הבעיה עכשיו היא שהוא לא קולט את multiply מהטבלה ומבקש הזנת מספר. האיות נכון, הכל מתאים. יש רעיון? הבעיה נפתרה. הבעיה הנוכחית היא שהוא פשוט לא מעדכן את new grades. לפי החשד שלי הוא מנסה לעדכן את subjects למרות שאין שם מה לעדכן... (הוא מנסה לעדכן 3 רשומות- בsubjects יש 3 ולעומת זאת ב grades יש 8. כמו כן, שום רשומה לא מתעדכנת ב grades) הלוואי שאני אגמור את החרא הזה מחר...[br]פורסם בתאריך: 21.06.2009 בשעה 23:26:32 כל הבעיות נפתרו! עכשיו יש בעיות חדשות... אבל איתן אני יכול להתמודד.
פורסם 2009 ביוני 2216 שנים מחבר UPDATE subjects INNER JOIN (courses INNER JOIN grades ON courses.[course number] = grades.course) ON (subjects.num = grades.subject) AND (subjects.num = courses.subject) SET grades.[new grade] =grades.grade*subjects.multipy/courses.hours;
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.