דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. שגיאת שאילתה שאינה ניתנת לעדכון

שגיאת שאילתה שאינה ניתנת לעדכון

מתוזמן נעוץ נעול הועבר תכנות
7 פוסטים 4 כותבים 298 צפיות 4 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • אבייא
    אבייא
    אביי
    כתב ב נערך לאחרונה על ידי
    #1

    יש לי 2 טבלאות.
    טבלה עם נתונים של אנשים, וטבלה עם נתונים של סכומים.
    על טבלת הסכומים יש שאילתות סיכום שמסכמות את הסכומים לפי מזהה של האנשים באנשים.

    אני מנסה לעשות שאילתת עדכון שמשתמשת בתנאים מטבלת האנשים ומהשאילתות שעל טבלת הסכומים, ומעדכנת ערכים בטבלת האנשים.

    הגדרתי קש"ג בין המזהה בטבלת האנשים למזהים בשאילתות.

    אבל אני מקבל שגיאת שאילתה שאינה ניתנת לעידכון. מה לא עשיתי טוב? 😧

    ניתן ליצור עימי קשר 8140hp+t@gmail.com | קטלוג מוצרים
    abaye.co

    תגובה 1 תגובה אחרונה
    1
    • גגדג
      גגדג
      גגד
      כתב ב נערך לאחרונה על ידי
      #2

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

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

      אבייא תגובה 1 תגובה אחרונה
      0
      • גגדג גגד

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

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

        אבייא
        אבייא
        אביי
        כתב ב נערך לאחרונה על ידי
        #3

        @גגד נכון. אבל זה לא אותה טבלה, הנתונים בשאילתות מגיעים מטבלה אחרת שאינה נמצאת בכלל בשאילתת העידכון... הם רק מקושרים בקש"ג לID הראשי.

        ניתן ליצור עימי קשר 8140hp+t@gmail.com | קטלוג מוצרים
        abaye.co

        OdedDvirO תגובה 1 תגובה אחרונה
        1
        • אבייא אביי

          @גגד נכון. אבל זה לא אותה טבלה, הנתונים בשאילתות מגיעים מטבלה אחרת שאינה נמצאת בכלל בשאילתת העידכון... הם רק מקושרים בקש"ג לID הראשי.

          OdedDvirO
          OdedDvirO
          OdedDvir
          כתב ב נערך לאחרונה על ידי OdedDvir
          #4

          @אביי כשאתה באקסס, נקוט כללים אלו בידך:

          1. כל שאילתא שאינה ניתנת לעדכון - אינה יכולה להיות אחד המרכיבים של שאילתת עדכון.
          2. שאילתת סיכום אינה ניתנת לעדכון.
          3. גם שאילתא שמבוססת על יותר מ-3 שאילתות - אינה ניתנת לעדכון. <- עריכה: זה לא נכון, כפי שהעיר @אפר-שריפה לקמן.
            זכרתי משהו כזה, אך הניסוח הנכון הוא: "The query is based on three or more tables and there is a many-to-one-to-many relationship."
            דהיינו שאילתא שמבוססת על 3 טבלאות שיש ביניהן קשר רבים-יחיד-רבים.

          ממילא, הדבר שאתה מבקש אינו אפשרי בדרך זו.
          ניתן להשתמש בפונקציית התחום DSum, DCount וכו' כפי שהציע @גגד, אבל הרבה יותר יעיל להשתמש בטבלת עזר זמנית:
          א. צור שאילתת יצירת טבלה שיוצרת טבלת עזר זמנית המכילה את הסכומים עבור כל מזהה של איש.
          ב. צור שאילתת עדכון שמעדכנת את טבלת האנשים לפי טבלת העזר.

          אפר שריפהא 2 תגובות תגובה אחרונה
          4
          • OdedDvirO OdedDvir

            @אביי כשאתה באקסס, נקוט כללים אלו בידך:

            1. כל שאילתא שאינה ניתנת לעדכון - אינה יכולה להיות אחד המרכיבים של שאילתת עדכון.
            2. שאילתת סיכום אינה ניתנת לעדכון.
            3. גם שאילתא שמבוססת על יותר מ-3 שאילתות - אינה ניתנת לעדכון. <- עריכה: זה לא נכון, כפי שהעיר @אפר-שריפה לקמן.
              זכרתי משהו כזה, אך הניסוח הנכון הוא: "The query is based on three or more tables and there is a many-to-one-to-many relationship."
              דהיינו שאילתא שמבוססת על 3 טבלאות שיש ביניהן קשר רבים-יחיד-רבים.

            ממילא, הדבר שאתה מבקש אינו אפשרי בדרך זו.
            ניתן להשתמש בפונקציית התחום DSum, DCount וכו' כפי שהציע @גגד, אבל הרבה יותר יעיל להשתמש בטבלת עזר זמנית:
            א. צור שאילתת יצירת טבלה שיוצרת טבלת עזר זמנית המכילה את הסכומים עבור כל מזהה של איש.
            ב. צור שאילתת עדכון שמעדכנת את טבלת האנשים לפי טבלת העזר.

            אפר שריפהא
            אפר שריפהא
            אפר שריפה
            כתב ב נערך לאחרונה על ידי
            #5

            @OdedDvir 3 לא בהכרח נכון

            OdedDvirO תגובה 1 תגובה אחרונה
            1
            • OdedDvirO OdedDvir

              @אביי כשאתה באקסס, נקוט כללים אלו בידך:

              1. כל שאילתא שאינה ניתנת לעדכון - אינה יכולה להיות אחד המרכיבים של שאילתת עדכון.
              2. שאילתת סיכום אינה ניתנת לעדכון.
              3. גם שאילתא שמבוססת על יותר מ-3 שאילתות - אינה ניתנת לעדכון. <- עריכה: זה לא נכון, כפי שהעיר @אפר-שריפה לקמן.
                זכרתי משהו כזה, אך הניסוח הנכון הוא: "The query is based on three or more tables and there is a many-to-one-to-many relationship."
                דהיינו שאילתא שמבוססת על 3 טבלאות שיש ביניהן קשר רבים-יחיד-רבים.

              ממילא, הדבר שאתה מבקש אינו אפשרי בדרך זו.
              ניתן להשתמש בפונקציית התחום DSum, DCount וכו' כפי שהציע @גגד, אבל הרבה יותר יעיל להשתמש בטבלת עזר זמנית:
              א. צור שאילתת יצירת טבלה שיוצרת טבלת עזר זמנית המכילה את הסכומים עבור כל מזהה של איש.
              ב. צור שאילתת עדכון שמעדכנת את טבלת האנשים לפי טבלת העזר.

              אפר שריפהא
              אפר שריפהא
              אפר שריפה
              כתב ב נערך לאחרונה על ידי
              #6

              @OdedDvir אפשר לאפס ואז לעשות עדכון ללא סיכום ע"י צירוף הערך הקיים לערך מהטבלה השניה

              תגובה 1 תגובה אחרונה
              0
              • אפר שריפהא אפר שריפה

                @OdedDvir 3 לא בהכרח נכון

                OdedDvirO
                OdedDvirO
                OdedDvir
                כתב ב נערך לאחרונה על ידי
                #7

                @אפר-שריפה אמר בשגיאת שאילתה שאינה ניתנת לעדכון:

                @OdedDvir 3 לא בהכרח נכון

                צודק! תיקנתי במקור.

                תגובה 1 תגובה אחרונה
                2

                שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.

                נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.

                בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗

                הרשמה התחברות
                תגובה
                • תגובה כנושא
                התחברו כדי לפרסם תגובה
                • מהישן לחדש
                • מהחדש לישן
                • הכי הרבה הצבעות


                בא תתחבר לדף היומי!
                • התחברות

                • אין לך חשבון עדיין? הרשמה

                • התחברו או הירשמו כדי לחפש.
                • פוסט ראשון
                  פוסט אחרון
                0
                • דף הבית
                • קטגוריות
                • פוסטים אחרונים
                • משתמשים
                • חיפוש
                • חוקי הפורום