sql server COLUMNS_UPDATED function
-
שכבת הפלדה של הנתונים יכולה לכלול את הדטה ביס שיכיל נתונים בלבד ועוד כמה מחלקות קוד שיטפלו בנתונים, כך שזה יחסוך לזה המון זמן לנסות לעשות כל דבר בתוך ה 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)