SQL Server Rebuild View

נתן.ל

New member
SQL Server Rebuild View

שלום למומחים,
מזה זמן מה שאני עוקב אחר הפורום ומתעניין ולומד רבות.

שאלה לי אליכם, אשר לא מצאתי עליה תשובה.
כאמור יש לי כמה וכמה Views אצלי אשר מידי פעם כאילו הם "מאבדים" את המספרים שלהם.
כלומר, את הרשומות מתוך הטבלאות אני מצליח לראות אבל החישובים אשר נעשים ברמת הVIEW מתאפסים ברובם.
לאחר מחקרים רבים למדתי שאם אני כביכול מבצע Alter View, בלי לשנות שום דבר, הכל מסתדר.
כלומר רק לגרום לSQL לחשוב כאילו עשיתי איזה שינוי או כאילו בניתי את הVIEW מחדש ופתאם הכל חוזר למסלולו וכל הערכים המחושבים באמת מציגים ערכים אמיתיים.

נראה לי שמה שבעצם עשיתי היה ReBuild לVIEW, כמו שיש אפשרות לעשות את זה לאינדקסים של טבלה, לא?
אם כך, הרי בטח יש איזו דרך לעשות את זה בצורה אוטומטית, אולי איזו פקודה או SP שאפשר להכניס לתוך JOB אוטומטי וכך לא אתקל יותר בתקלות שכאלה.
לדאבוני לא הצלחתי כל כך למצוא פקודה שכזאת, אז באתי לשאול אתכם.
כמובן שאני יכול להכניס לתוך JOB את כל פקודת הAlter view וכאילו ליצור אותו מחדש בצורה אוטומטית, אבל זה יהיה מסובך לתחזוקה בכל פעם שבאמת אני מעוניין לשנות שדה זה או אחר.

מי יכול לעזור לי?

בתודה מראש
נתן
 

גרי רשף

New member
באיזו סביבה מדובר?

יש לי הערכה במה מדובר: ב-SQL Server, כשמשנים את מבנה הטבלה- ה-Views התלויים בה משתבשים או עלולים להשתבש (בעיקר Views מהסוג של * Select).
הפתרון המסודר לכך הוא להשתמש בפרוצדורה SP_RefreshView.
גם Alter View יספק את הסחורה, אך הוא לא יכול להיות חלק מפרוצדורה שמבצעת את הפעולה דרך שגרה.
 

נתן.ל

New member
תודה רבה


זה מה שעשיתי בסוף.
 
למעלה