שלח תשובה

זירת השאלות

1 תשובות

  1. אוריקס הגיב:

    איך יוצרים Stored Procedures באקסס?
    בעקרון יש שתי דרכים:
    * יצירת השאילתה דרך אשף השאילתות, והפעלתה כמו שיוסבר בהמשך.
    * יצירת ה SP דרך הקוד.

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

    איך יוצרים SP ברמת הקוד?
    תחילה נצהיר על כך שאנחנו רוצים ליצור פרוצדורה חדשה:


    CREATE PROCEDURE First

    אם נרצה, נצהיר על משתנים [פרמטרים]. הפרמטרים יהיו מטיפוסי נתונים שונית שאותם נפרט בהמשך:


    (
    @d int
    )

    אם ברצוננו יותר ממשתנה אחד, נפריד ע"י פסיקים, למשל:


    (
    @d int,
    @m VarChar(255)
    )

    לאחר מכן נכתוב את הפרוצדורה עצמה. כשנרצה לשלב את הפרמטר נכתוב @ ושם הפרמטר.


    AS
    SELECT *
    FROM tbl
    WHERE fld=@d
    ORDER BY id DESC;

    את הצהרת ה SQL הזאת נפעיל בעזרת


    conn.execute()

    והקוד המלא:


    CREATE PROCEDURE First
    (
    @d int
    )
    AS
    SELECT *
    FROM tbl
    WHERE fld=@d
    ORDER BY id DESC;

    הפעלת הפרוצדורה מתוך דף ה ASP לצורך שליפה:
    מתבצעת כך:


    var x=12;
    sql = "EXECUTE First @d="+x; //Store Procedure
    rs.Open (sql,Conn);

    מחיקת הפרוצדורה


    DROP PROCEDURE first;

    [גם זה מתבצע ע"י conn.execute]

    טיפוסי נתונים:
    *Int – מספר.
    *Long – מספור אוטומטי.
    *Bit – שדה בולאני
    *Char(length) – טקסט, מקבל פרמטר המציין את האורך.
    *VarChar(length) – טקסט, מקבל פרמטר המציין את האורך [גדול יותר].
    *Text – תזכיר.
    *DateTime – תאריך ושעה.

שלח תשובה