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

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

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

SP ב MYSQL

מתוזמן נעוץ נעול הועבר ארכיון code613m
8 פוסטים 2 כותבים 608 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • C מנותק
    C מנותק
    code.net
    כתב ב נערך לאחרונה על ידי
    #1

    מישהו יודע לכתוב SP בMYSQL?
    כתבתי כמה פרוצדורות ופונקציות, אבל חסר לי משהו בתחביר הבסיסי להבנה כיצד לכתוב.
    אשמח אם מישהו יוכל להעלות מספר דוגמאות של פונקציות בעיקר, וגם פרוצדורות.

    תודה

    פורסם במקור בפורום CODE613 ב17/06/2016 09:44 (+03:00)

    תגובה 1 תגובה אחרונה
    0
    • C מנותק
      C מנותק
      code.net
      כתב ב נערך לאחרונה על ידי
      #2

      חברי'ה? אפשר בבקשה דוגמא לפרוצדורות/פונקציות שמורות בMYSQL?

      פורסם במקור בפורום CODE613 ב19/06/2016 11:31 (+03:00)

      תגובה 1 תגובה אחרונה
      0
      • E מנותק
        E מנותק
        esti
        כתב ב נערך לאחרונה על ידי
        #3

        מבנה בסיסי:
        CREATE PROCEDURE get_employees AS
        select * from employees
        קריאה לפרוצדורה:
        execute get_employees
        או:
        exe get_employees
        פונקציות:
        מבנה בסיסי
        CREATE FUNCTION function_name

        [רשימת הפרמטרים שהפונקציה מקבלת]

        RETURNS return_data_type //צריך להגדיר את סוג הערך המוחזר מהפונקציה לדוג' varchar
        AS BEGIN
        //בגוף הפונקציה צריך להגדיר משתנה מקומי שמחזיר את הערך מהפונקציה כמובן שהוא צריך להיות מאותו סוג ערך שהוגרד למעלה!
        //כתיבת גוף הפונקציה (הקוד...)
        RETURN scalar_expression //הפונקציה מחזירה את המשתנה המקומי שהוגדר
        END
        דוג':
        (create function(@a float

        פורסם במקור בפורום CODE613 ב19/06/2016 12:27 (+03:00)

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

          דוג':
          (create function sample(@a float
          RETURNS float
          AS
          BEGIN
          DECLARE @num flout
          (select @num= avg(price
          from prices
          where id = @a
          return @num
          END

          קיימות עוד סוגים של פונקציות, אבל זה הבסיס.

          פורסם במקור בפורום CODE613 ב19/06/2016 12:35 (+03:00)

          תגובה 1 תגובה אחרונה
          1
          • C מנותק
            C מנותק
            code.net
            כתב ב נערך לאחרונה על ידי
            #5

            @Esti

            דוג':
            (create function sample(@a float
            RETURNS float
            AS
            BEGIN
            DECLARE @num flout
            (select @num= avg(price
            from prices
            where id = @a
            return @num
            END

            קיימות עוד סוגים של פונקציות, אבל זה הבסיס.

            על איזה גירסה של MYSQL אתה מדבר?
            אצלי יש 5.1.73, ואת ה@ הוא בכלל לא מכיר, תחת זאת יש את INTO.

            ו... ברכות למשתמש הטרי! נראה שנרשמת על מנת לעזור לי :smile:

            פורסם במקור בפורום CODE613 ב19/06/2016 13:22 (+03:00)

            תגובה 1 תגובה אחרונה
            0
            • E מנותק
              E מנותק
              esti
              כתב ב נערך לאחרונה על ידי
              #6

              ה@ זה הסינטקס של SQL. בMYSQL לא צריך אותו.

              פורסם במקור בפורום CODE613 ב19/06/2016 13:40 (+03:00)

              תגובה 1 תגובה אחרונה
              0
              • C מנותק
                C מנותק
                code.net
                כתב ב נערך לאחרונה על ידי
                #7

                למען הסדר הטוב, אביא להלן את הסינטקס הנכון ששימש אותי.
                ותודה לEsti על העזרה שהנחתה אותי למצוא את התחביר הכללי הנכון.
                השימוש הוא בDelimiter /

                create function sample(Param1 int) RETURNS float DETERMINISTIC
                BEGIN
                DECLARE paramRetrun float; 
                SELECT tbl1.clm1 - tbl1.clm2 AS ViewClm
                INTO paramRetrun
                FROM tblBookkeeping
                WHERE 1=1;
                RETURN(paramRetrun);
                END;
                /
                

                פורסם במקור בפורום CODE613 ב20/06/2016 13:11 (+03:00)

                תגובה 1 תגובה אחרונה
                0
                • E מנותק
                  E מנותק
                  esti
                  כתב ב נערך לאחרונה על ידי
                  #8

                  בהצלחה!

                  פורסם במקור בפורום CODE613 ב20/06/2016 14:02 (+03:00)

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

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

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

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