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

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

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

mySQL מניעת חלק מהערכים כפולים

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

    נניח יש לי טור מזהה לקוח וטור סוג מכירה.
    כל לקוח יכול להוסיף כמה מכירות שהוא רוצה אבל רק מסוג "מכירה" או "חלוקה".
    ישנו סוג נוסף בשם "מכירה מיוחדת" שלכל לקוח יש אפשרות של מכירה מיוחדת אחת בלבד.
    האם יש אפשרות לעשות Unique על שתי העמודות, אבל להגדיר שרק לערך מסויים הוא לא יאפשר כפילות?
    דוגמא להמחשה
    73b09a3c-f11d-444a-a156-179d4daecdaa-image.png

    תגובה 1 תגובה אחרונה
    0
    • י מנותק
      י מנותק
      יוסף בן שמעון
      כתב ב נערך לאחרונה על ידי
      #2

      @חוקר אם הבנתי אותך זה אולי הפתרון

      https://stackoverflow.com/questions/635937/how-do-i-specify-unique-constraint-for-multiple-columns-in-mysql

      dovidD תגובה 1 תגובה אחרונה
      0
      • dovidD מנותק
        dovidD מנותק
        dovid ניהול
        השיב ליוסף בן שמעון ב נערך לאחרונה על ידי dovid
        #3

        @יוסף-בן-שמעון לא, לא הבנת אותו.
        הלינק שלך מדבר על אילוץ יחידני על פני כמה עמודות, ואילו הוא רוצה שיהיה שרק אם יש בעמודה X ערך Y אז יהיה אילוץ כפילות על פני שתי עמודות.

        אני מצאתי פה משהו כזה
        https://dba.stackexchange.com/q/167544/52552
        הפתרון המוצע שם להבנתי משתמש בטריק של עמודה מחושבת. בעמודה המחושבת קובעים ערך בהתאם לסוג:

        ALTER TABLE `the_TABLE`
        ADD [COLUMN] `trick` AS (CASE WHEN `SUG` = 'מכירה מיוחדת' THEN `SUG` ELSE `ID` END)  VIRTUAL
        ADD CONSTRAINT cc UNIQUE (`לקוח`, `trick`)
        

        מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

        בכל נושא אפשר ליצור קשר dovid@tchumim.com

        ח תגובה 1 תגובה אחרונה
        1
        • ח מנותק
          ח מנותק
          חוקר
          השיב לdovid ב נערך לאחרונה על ידי
          #4

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

          dovidD תגובה 1 תגובה אחרונה
          0
          • dovidD מנותק
            dovidD מנותק
            dovid ניהול
            השיב לחוקר ב נערך לאחרונה על ידי
            #5

            @חוקר בדיוק איפה שהיית מיישם UNIQUE רגיל.
            ואתה צריך שרת פיתוח למשחקים, ואל תעשה את זה באמזון כי זה יקר.

            מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

            בכל נושא אפשר ליצור קשר dovid@tchumim.com

            ח 2 תגובות תגובה אחרונה
            2
            • ח מנותק
              ח מנותק
              חוקר
              השיב לdovid ב נערך לאחרונה על ידי
              #6

              @dovid אמר בmySQL מניעת חלק מהערכים כפולים:

              ואתה צריך שרת פיתוח למשחקים, ואל תעשה את זה באמזון כי זה יקר.

              חשבתי באמת גם לגבי השדרוג של mysql לבצע תמונת מערכת וליצור העתק לשרת נוסף, ושם לנסות את השדרוג, כשאחזור להתמודד בסוגיית הפילוחים שם אבדוק מה לעשות, האם להתמודד בשאילתאות או אכן לשדרג (מאוד מפחיד בזמן הקצר שיש לי)

              dovidD תגובה 1 תגובה אחרונה
              0
              • ח מנותק
                ח מנותק
                חוקר
                השיב לdovid ב נערך לאחרונה על ידי
                #7

                @dovid אמר בmySQL מניעת חלק מהערכים כפולים:

                ואתה צריך שרת פיתוח למשחקים, ואל תעשה את זה באמזון כי זה יקר.

                איפה כן?

                י yossizY 2 תגובות תגובה אחרונה
                0
                • י מנותק
                  י מנותק
                  יוסף בן שמעון
                  השיב לחוקר ב נערך לאחרונה על ידי
                  #8
                  פוסט זה נמחק!
                  תגובה 1 תגובה אחרונה
                  0
                  • yossizY מנותק
                    yossizY מנותק
                    yossiz
                    השיב לחוקר ב נערך לאחרונה על ידי
                    #9

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

                    📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                    WWWW תגובה 1 תגובה אחרונה
                    2
                    • WWWW מנותק
                      WWWW מנותק
                      WWW
                      השיב לyossiz ב נערך לאחרונה על ידי
                      #10

                      @yossiz יש ב 15 ש"ח מכונות נורמליות בסקלווי ו OVH.

                      WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

                      תגובה 1 תגובה אחרונה
                      1
                      • dovidD מנותק
                        dovidD מנותק
                        dovid ניהול
                        השיב לחוקר ב נערך לאחרונה על ידי
                        #11

                        @חוקר אני הייתי עושה שתי מכונות (בOVH זה ממש זול)
                        וכל פעם אחת אמיתית והשניה פיתוח, כשהפיתוח נראה מושלם אז הופכים.

                        מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                        בכל נושא אפשר ליצור קשר dovid@tchumim.com

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

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

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

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