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

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

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

ערך רנדומלי בשדה mysql.

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

    אני רוצה שדה רנדומלי בטבלה במסד נתונים mysql. לא משנה אם הרנדומלי הוא מספרי או טקסט.

    בגירסה ישנה של mysql השתמשתי ב

    ALTER TABLE user ADD `token` char(12) DEFAULT RAND();
    

    אבל בגירסה חדשה יותר הוא נותן לי שגיאה

    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'RAND()' at line 1
    

    איך עוקפים את זה, או מגדירים משהו אחר (אולי בAUTO_INCREMENT)?

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

      אני רוצה שדה רנדומלי בטבלה במסד נתונים mysql. לא משנה אם הרנדומלי הוא מספרי או טקסט.

      בגירסה ישנה של mysql השתמשתי ב

      ALTER TABLE user ADD `token` char(12) DEFAULT RAND();
      

      אבל בגירסה חדשה יותר הוא נותן לי שגיאה

      #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'RAND()' at line 1
      

      איך עוקפים את זה, או מגדירים משהו אחר (אולי בAUTO_INCREMENT)?

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

      @chagold לפי הדוקומנטציה, ערך ברירת המחדל יכול להיות רק קבוע:

      the default value specified in a DEFAULT clause must be a literal constant; it cannot be a function or an expression.

      יש כאן הצעה חלופית על ידי יצירת טריגר.
      וכאן יש הצעה לעשות מניפולציה מספרית על השדה ID.

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

        @chagold לפי הדוקומנטציה, ערך ברירת המחדל יכול להיות רק קבוע:

        the default value specified in a DEFAULT clause must be a literal constant; it cannot be a function or an expression.

        יש כאן הצעה חלופית על ידי יצירת טריגר.
        וכאן יש הצעה לעשות מניפולציה מספרית על השדה ID.

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

        @odeddvir
        אני מנסה עם הטריגר.
        זה -

        CREATE TRIGGER trigger_code BEFORE INSERT ON user FOR EACH ROW SET @token=MD5( RAND ());
        

        כשהטבלה היא user והשדה token זה מורץ תקין, אבל ברגע האמת לא עובד.

        מה לא הבנתי טוב?

        881fe405-de7c-4065-930c-67e6999679e6-image.png

        OdedDvirO תגובה 1 תגובה אחרונה
        0
        • chagoldC chagold

          @odeddvir
          אני מנסה עם הטריגר.
          זה -

          CREATE TRIGGER trigger_code BEFORE INSERT ON user FOR EACH ROW SET @token=MD5( RAND ());
          

          כשהטבלה היא user והשדה token זה מורץ תקין, אבל ברגע האמת לא עובד.

          מה לא הבנתי טוב?

          881fe405-de7c-4065-930c-67e6999679e6-image.png

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

          @chagold אמר בערך רנדומלי בשדה mysql.:

          מה לא הבנתי טוב?

          תשתמש בקידומת NEW עבור השדה החדש שנוצר, כך:

          CREATE TRIGGER trigger_code BEFORE INSERT ON user FOR EACH ROW SET NEW.token=MD5( RAND ());
          
          תגובה 1 תגובה אחרונה
          1

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

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

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

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


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

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

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