Where is My Object?
אני רוצה להציג כלי קטן שתמיד נמצא איתי בארגז הכלים.
לרובנו קיים מסד נתונים ששם אנו שומרים את הסקריפטים בתור פרוצדורות אu טבלאות ניהול.
אחד הסקריפטים שגדל אט אט הוא סקריפט פשוט יחסית אך, הוא כלי שכולנו משתמשים בו בדרך זו או אחרת. אני מדבר על אמצעי חיפוש בתוך מסד הנתונים/ השרת.
היום יש מספר דרכים לבצע כמעט כל מטרה, הכלים שנבחן הם:
Filter
פרוצדורת חיפוש.
Filter:
האופציה הפשוטה ביותר. נותנת לנו אפשרות לחפש ע"ב שם הסכמה או שם האובייקט המבוקש – פרוצדורה/פונקציה/טבלה/View/מתזמן(Job).
חסרונות:
לא ניתן לחפש ע"פ תוכן התכולה של האובייקט.
לא ניתן לחפש עמודה בתוך טבלה.
לא ניתן לחפש טריגר.
לא ניתן לחפש שמות אילוצים (FK\CK וכו'...)
לא ניתן לחפש תוכן של דוחות (במידה ומותקן SSRS)
לא ניתן לחפש על יותר ממסד נתונים אחד
יתרונות:
מהיר ונח.
כלי חינם שפותח ע"י חברת Red Gate ויוצר תוסף בתוך הSSMS.
הכלי מספק GUI המאפשר חיפוש במסד נתונים אחד או יותר, וניתן לנווט לאובייקט מתוך הכלי עצמו.
החיפוש יכול להתבצע כפשוטו על שם האובייקט או תוכנו, או בצורה מתקדמת ע" שימוש באופרטורים (AND/OR/NOT) וwildCard.
החיפוש מבוצע על האובייקטים הבאים - פרוצדורה/פונקציה/טבלה/View/מתזמן/אילוץ.
חסרונות:
לא תמיד עובד, ונדרש לבצע refresh לכלי(וגם אז לא תמיד הוא עובד).
לא ניתן לחפש עמודה בתוך טבלה.
לא ניתן לחפש תוכן של דוחות (במידה ומותקן SSRS).
כמו הכלי של Red Gate גם כן מתממשק לSSMS.
חיפוש על מסד נתונים אחד או כולם
יודע לבצע חיפוש על מגוון רחב של אובייקטים –
חסרונות:
לא ניתן לחפש תוכן של דוחות (במידה ומותקן SSRS)
יתרונות:
מכיל אופציה לשינוי שם של אובייקט בבטחה – מוצא את כל ההפניות לאובייקט ומייצר סקריפט לשינוי השם של האובייקט ומתקן את כל ההפניות לאובייקט.
עובד יחסית יציב.
לכאורה יש כלים צד שלישי שעושים עבודה מעולה ומספקים פתרון דיי מקיף לחיפוש אובייקטים, אבל צריך לזכור שלעיתים תוכנות אלה גורמות לחיבור נוסף במסד הנתונים וברקע מתבצעים עוד דברים שלא תמיד נרצה.
כך אנו מגיעים לפתרון האחרון והוא ע"י פרוצדורה:
הפרוצדורה מאפשרת חיפוש במסד נתונים בודד ומבצעת חיפוש על אובייקטים הבאים: טבלה/ עמודה /View/ פונקציות/ פרוצדורות/ מתזמנים/ אילוצים ובדוחות SSRS.
אני אישית מעדיף את היכולת של הפרוצדורה כאשר קישרתי אותה לסניפט ודווקא משתמש בפתרון הזה יותר מכולם – אינטואיטיבי ונח.
ניתן להוריד כאן
אני מניח שהשלב הבא יהיה לקשר אותו לSSIS אבל לפחות כרגע עדיין לא הרגשתי צורך בזה...
עם מה אתם משתמשים?