sql server COLUMNS_UPDATED function
-
אגב לתדהמתי אני רואה פתאום שבאקסס 2013 הם עשו אירועים ברמת הטבלה, ושם אתה מקבל בדיוק מה שרצינו ומה שאמרת שאין ב sql server ערך ישן, ערך חדש, ושם השדה בסטרינג.
לא יאומן איזה גורל, מחליטים בשביל האקססאים לעשות שכלולים שאין לך דרך להשיג אותם ב sql server!!!
כבר מילתי אמורה בנושא זה רק חבל שמייקרוסופט לקחה את האקסס לכיוון של ה.... עם מאקרו (לך תעשה FOR במאקרו, [לא אמרתי שא"א אבל מעיק]) במקום לכיוון של המתכנתים עם יכולות מורחבות.
פורסם במקור בפורום CODE613 ב31/12/2013 23:25 (+02:00)
-
ארכיטקט, נראה לי שהבעיה היא הסיטואציה שלך, ולא מערכת הDB. למה? ממה שאני מבין בכל מקום, זה לא כ"כ מעניינו של הDB הדברים הללו.
הסיבה שאתה עושה את זה ברמת הDB זה משום שהקליינט שלך הוא אקסס, אבל סביר מאוד שבצורך נורמלי הכי טוב זה SP (יוזר, טבלה, עמודה, שדה חדש) שמכניס את הנתון ומעדכן את הלוג, וכל הבעיה נפתרה.
הסיבה שאני חושב שהDB הוא לא המקום לכאלה דברים, זה העובדה שאין את האפשרות הזאת בצורה פשוטה, ייתכן אמנם שפשוט כולם טפשים אבל בכל אופן.פורסם במקור בפורום CODE613 ב26/01/2014 19:03 (+02:00)
-
-
שכבת לוגיקת הנתונים צריכה להיות עצמאית לגמרי, זה לא משנה מה הקליינט, להיפך בארגון שרוב הליבה שלו היא לוקיגת נתונים, הכל צריך להיות סגור בתוך הדטה בייס, בשביל מה יש דטה בייס???? הרי הכל אפשר לעבוד בעצם עם קובצי טקסט או XML ולעשות את כל הניתוח בקוד... :lol: כמו שהיה לפני 40 וחמישים שנה. הרעיון של דטה בייס זה ליצור שכבת פלדה יצוקה של נתונים, שתהווה את היסוד של הבינה העיסקית, ועליה אתה יכול לבנות כמה UI שרק תרצה ובאיזו טכנולוגיה שתבחר. אז קליק וואן באמת צודק כשאמר שאני צודק... :lol: :lol: :lol:
פורסם במקור בפורום CODE613 ב26/01/2014 21:01 (+02:00)
-
שכבת הפלדה של הנתונים יכולה לכלול את הדטה ביס שיכיל נתונים בלבד ועוד כמה מחלקות קוד שיטפלו בנתונים, כך שזה יחסוך לזה המון זמן לנסות לעשות כל דבר בתוך ה SQL, תעשה בקוד ונגמר הסיפור. וכך גם לא תאבד את ההפרדה בין הממשק לשכבת הנתונים.
פורסם במקור בפורום CODE613 ב27/01/2014 06:48 (+02:00)
-
שכבת הפלדה של הנתונים יכולה לכלול את הדטה ביס שיכיל נתונים בלבד ועוד כמה מחלקות קוד שיטפלו בנתונים, כך שזה יחסוך לזה המון זמן לנסות לעשות כל דבר בתוך ה SQL, תעשה בקוד ונגמר הסיפור. וכך גם לא תאבד את ההפרדה בין הממשק לשכבת הנתונים.
לא. - שים לב למה שארכיטקט הסביר - בצדק:
@ארכיטקטשכבת לוגיקת הנתונים צריכה להיות עצמאית לגמרי, זה לא משנה מה הקליינט, להיפך בארגון שרוב הליבה שלו היא לוקיגת נתונים, הכל צריך להיות סגור בתוך הדטה בייס, בשביל מה יש דטה בייס???? הרי הכל אפשר לעבוד בעצם עם קובצי טקסט או XML ולעשות את כל הניתוח בקוד... :lol: כמו שהיה לפני 40 וחמישים שנה. הרעיון של דטה בייס זה ליצור שכבת פלדה יצוקה של נתונים, שתהווה את היסוד של הבינה העיסקית, ועליה אתה יכול לבנות כמה UI שרק תרצה ובאיזו טכנולוגיה שתבחר. אז קליק וואן באמת צודק כשאמר שאני צודק... :lol: :lol: :lol:
אם כבר, יש אפשרות להפעיל פונקציות CLR שכתובות בC# או VB, אבל זה כבר עניין אחר.
בכל מקרה השאיפה היא לעשות כמה שיותר בDB. זה נקרא שכבת פלדה.פורסם במקור בפורום CODE613 ב27/01/2014 08:19 (+02:00)
-
שכבת הפלדה של הנתונים יכולה לכלול את הדטה ביס שיכיל נתונים בלבד ועוד כמה מחלקות קוד שיטפלו בנתונים, כך שזה יחסוך לזה המון זמן לנסות לעשות כל דבר בתוך ה SQL, תעשה בקוד ונגמר הסיפור. וכך גם לא תאבד את ההפרדה בין הממשק לשכבת הנתונים.
אתה צריך להבין משהו רבי רחמים, כאשר בונים פרוייקט נתונים, אתה לא יכול לדעת איך מחר או מחרתיים נרצה לעדכן ומאיזה שאילתה, עכשיו אם אתה עושה קוד שמטפל בכל מיני דברים, אתה צריך "לזכור" כל פעם שמעדכנים משהו, שזה יעבור דרך הקוד ההוא, וזה כבר בעייה של ארכיטקטורה, תאר לעצמך שהעסק מחליט להרחיב את פעילותו, ולאפשר ללקוחות לעדכן את הנתונים שלהם באמצעות אתר אינטרנט, ואתה למצער עשית איזה שהוא קוד שקשור בחבל הטבור לאינטרפייס של WPF או אקסס, או מה שזה לא יהיה. אתה מבין את המשמעות של זה כמה כתיבת קוד והמרת קוד אתה צריך כדי שזה יעבוד כמו שצריך. אבל אם כל הלוגיקה של הנתונים ארוזה בתוך הדטה בייס, אין לך מה לדאוג, והלקוח יכול אפילו לקחת מישהו אחר שיכתוב לו את הקוד של האתר, הרי סוף סוף כל מה שמעודכן בטבלה כלשהי, עושה את כל העבודה הנדרשת, על מנת לוודא ולאמת נתונים ברמת הבינה העיסקית. וזה עבודה אמיתית לטווח ארוך.
התחושה האישית שלי, שהנושא של UI הוא הרבה יותר נמצא בתהליכי התפתחות מואצים, מאשר המנועים האמיתיים, כגון דטה בייסים, וקוד ליבה. קח את שפת C ושפת SQL מאז שהמציאו אותן, לא נס ליחן ולא כהתה עינן, הן משרתות להערכתי 90 אחוז מכוח המיחשוב ברחבי העולם!!!! כל הפיתוחים שאנחנו רואים לא מפריעים בכלל למערכות קיימות, אלא רק משפרות ומשכללות. מאידך כמה מהמורות ותמורות עובר תחום ה UI בעשרים שנה האחרונות, כל אחד בא ומחסל את מה שעשה זולתו קודם לכן....
לכן אני תמיד ממליץ אם אתה רוצה שהמקצוע שלך יהיה יעיל ובר ביקוש למשך שנים ארוכות, תהפוך למומחה ב"מצרכי יסוד" של מיחשוב, כגון דטה בייסים, טכנולוגיית צד שרת וכדומה. אבל מי שהופך מומחה לפלטפורמה מסויימת, הוא "מהמר" שהיא תתפוס ותחזיק מעמד כמו וורדפרס או כיוצא באלו.
בכל אופן לא נסטה מהעניין, אתה צריך לספק ללקוח שלך דבר שאתה גאה בו למשך עשרים שנה קדימה לפחות, והדבר הכי טוב שאתה יכול לעשות בשביל זה זה הדטה בייס העוצמתי שלו. מבחינת UI הוא יוכל להחליף כל שנתיים מבחינתי, ולקחת גם חברות חיצוניות.
אם כבר, יש אפשרות להפעיל פונקציות CLR שכתובות בC# או VB, אבל זה כבר עניין אחר.
בכל מקרה השאיפה היא לעשות כמה שיותר בDB. זה נקרא שכבת פלדה.דווקא זה קוסם לי הייתי צולל קצת לנושא הזה של יכולות CLR. אם יש מדריך פיקנטי, אשמח לקישור, בינתיים אני קורא את התיעוד הרישמי.
ואגב בעניין שלנו, אני כבר 80 אחוז באמצע לכתוב קוד גנרי שיעשה את העבודה של טבלת לוג שינויים, יש לי קצת בעיות עם הקוד אשאל בשאלה נפרדת.
תודה.פורסם במקור בפורום CODE613 ב27/01/2014 15:59 (+02:00)