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

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

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

טבלה או שאילתה באקסס - חוות דעתכם

מתוזמן נעוץ נעול הועבר ארכיון code613m
14 פוסטים 6 כותבים 833 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • H מנותק
    H מנותק
    hubhcbh
    כתב ב נערך לאחרונה על ידי
    #5

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

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

    מכוער אבל ישן
    מסך מכירות.png

    פורסם במקור בפורום CODE613 ב24/08/2014 11:23 (+03:00)

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

      @MacroShadow

      בטבלה יש לשמור כל פעולה שנעשתה בפנ"ע.
      סיכומים ושאר ירקות [u:1x8fdcqg]רק[/u:1x8fdcqg] בשאילתות.

      @מלא

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

      לפי חוק נרמול 1 זה שגוי, אבל לפי הפרקטיקה ויעילות הביצוע זה בהחלט מתבקש הרבה פעמים, לכתוב לתוך מסד שדה מחושב ושאר ירקות ובעיקר סיכום של בנים בשורת האב. למעשה הדוגמה המובהקת של טריגר זה המקרה הזה, ובכלל, אלמלי הצורך הזה לא היו מפתחים את ה"טריגר" כלל, אף שהוא שימושי במקרים נדירים אחרים.

      פורסם במקור בפורום CODE613 ב25/08/2014 16:39 (+03:00)

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

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

      תגובה 1 תגובה אחרונה
      0
      • S מנותק
        S מנותק
        softs
        כתב ב נערך לאחרונה על ידי
        #7

        @דוד ל.ט.

        אבל לפי הפרקטיקה ויעילות הביצוע זה בהחלט מתבקש הרבה פעמים

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

        @דוד ל.ט.

        ובכלל, אלמלי הצורך הזה לא היו מפתחים את ה"טריגר" כלל, אף שהוא שימושי במקרים נדירים אחרים.

        הרחקת לכת בקביעה הזו, אני לדוגמה משתמש בטריגרים גם על מנת לשמור היסטורית שינויים וגם בטריגרים של instead of ועוד היד נטויה

        פורסם במקור בפורום CODE613 ב25/08/2014 17:03 (+03:00)

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

          @softs

          הרחקת לכת בקביעה הזו, אני לדוגמה משתמש בטריגרים גם על מנת לשמור היסטורית שינויים וגם בטריגרים של instead of ועוד היד נטויה

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

          השימוש בשני הוא חריג ונספח למושג טריגר שמטרתו לדאוג לשלמות הנתונים (=עקב אי נורמליזציה מלאה).

          זה מה שהתכוונתי, ייתכן שאני טועה.

          פורסם במקור בפורום CODE613 ב25/08/2014 18:27 (+03:00)

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

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

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

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

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

            כדי לשכנע אותי אחרת, צריך לנמק, עוד לא קיבלתי נימוקים עניניים בנושא.

            פורסם במקור בפורום CODE613 ב25/08/2014 18:41 (+03:00)

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

            תגובה 1 תגובה אחרונה
            0
            • S מנותק
              S מנותק
              softs
              כתב ב נערך לאחרונה על ידי
              #10

              @דוד ל.ט.

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

              אני פיתחתי כמה וכמה שיטות שונות ועדיין "ס'איז נישט"
              אשמח להפניה ל THREAD הספציפי

              פורסם במקור בפורום CODE613 ב25/08/2014 19:06 (+03:00)

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

                @softs

                אני פיתחתי כמה וכמה שיטות שונות ועדיין "ס'איז נישט"
                אשמח להפניה ל THREAD הספציפי

                ארכיטקט כתב כמה אשכולות והוא השקיע בנושא. ראה http://code.613m.org/viewtopic.php?f=1&t=211
                אבל לא כתבתי שם את טענתי האחרונה שהתגבשה אחרי כן.
                תוכל לראות הרבה מאמרים באינטרנט על דרכים למעקב שינויים, ושימוש בכלים המובנים של MSSQL לכך.
                הנה למשל: http://www.codeproject.com/Articles/537649/SQL-Server-Change-Tracking-CT

                פורסם במקור בפורום CODE613 ב25/08/2014 19:48 (+03:00)

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

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

                תגובה 1 תגובה אחרונה
                0
                • S מנותק
                  S מנותק
                  softs
                  כתב ב נערך לאחרונה על ידי
                  #12

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

                  פורסם במקור בפורום CODE613 ב25/08/2014 20:26 (+03:00)

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

                    וכתב הגרג"ר: במציאות הטריגרים אמורים להפעיל בדרך כלל פקודות Insert לטבלת לוג שמתעדת את השינויים בטבלה אליה הטריגר קשור, אם כי יכולים להיות להם שימושים נוספים. ע"ש.

                    פורסם במקור בפורום CODE613 ב26/08/2014 12:56 (+03:00)

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

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

                      @ארכיטקט

                      וכתב הגרג"ר: במציאות הטריגרים אמורים להפעיל בדרך כלל פקודות Insert לטבלת לוג שמתעדת את השינויים בטבלה אליה הטריגר קשור, אם כי יכולים להיות להם שימושים נוספים. ע"ש.

                      גם מיקרוסופט כותבים כך.
                      גם ויקיפדיה מתייחסים לשימוש זה בפרט בהקשר של sql server, אגב הערך חדש לי ושווה בדיקה http://en.wikipedia.org/wiki/Log_trigger

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

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

                      ...The trigger is mostly used for maintaining the integrity of the information on the database. For example, when a new record (representing a new worker) is added to the employees table, new records should also be created in the tables of the taxes, vacations and salaries.
                      

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

                      אגב השיטוט, פתרונות מהרשת נוספים באותו עיקרון שלכם - ארכיטקט וsoft - מבוססים על טריגר
                      http://weblogs.asp.net/jongalloway/adding-simple-trigger-based-auditing-to-your-sql-server-database
                      http://www.softcodearticle.com/2012/11/imlementing-generic-audit-trail-trigger-in-sql-server/

                      פורסם במקור בפורום CODE613 ב26/08/2014 16:56 (+03:00)

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

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

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

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

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

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