Cursors are the Devil

יום שני, אפריל 22, 2013

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

שימוש ב-SMO ליצירת סקריפטים

יום רביעי, אוגוסט 8, 2012

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

שדרוג מסד נתונים המכיל קוד CLR לגרסת SQL Server 2012

יום רביעי, מאי 2, 2012

צח פניגשטיין יועץ SQL בכיר, בעל 10 שנות ניסיון בתחום התוכנה, ר"צ DBA בפרוייקט ממשלתי מטעם נאיה טכנולוגיות לאחרונה ניסיתי להעביר את מסד הנתונים שלי משרת SQL 2008R2 לשרת SQL 2012. בצעתי Restore לקובץ גיבוי על השרת החדש. לאחר מכן העברתי את ה-Compatibility Level לגרסה 2012 ולחצתי OK:   לאחר עבודה מאומצת מצד השרת, צצה השגיאה הבאה: אומנם פסח כבר מאחורינו, אבל מה נשתנה השדרוג הזה מכל השדרוגים? חשוב לציין שבשלב...
אין תגובות

מאפיינים לא מתועדים ב- UPDATE STATISTICS

יום רביעי, מרץ 7, 2012

צח פניגשטיין יועץ SQL בכיר, בעל 10 שנות נסיון בתחום התוכנה, ר"צ DBA בפרוייקט ממשלתי מטעם נאיה טכנולוגיות אני מודה לסטאס בוגצ'ינסקי על העזרה בכתיבת המאמר. כדי לבצע אופטימיזציה יעילה לשאילתות, SQL Server מחזיק מידע סטטיסטי בנוגע לכמות המידע והתפלגות הערכים בטבלאות ואינדקסים. מידע זה משמש את SQL Server כדי להעריך מה תהייה הדרך היעילה ביותר לגשת לטבלאות המשתתפות בשאילתה ועל ידי כך ליצור תוכנית ביצוע אופטימאלית. את ההערכה המבוססת על המידע הסטטיסטי ניתן לראות כאשר אנו מביטים בתוכנית ביצוע: ניתן...

טרנזאקציות אוטונומיות (Autonomous Transactions)

יום רביעי, פברואר 8, 2012

צח פניגשטיין יועץ SQL בכיר, בעל 10 שנות נסיון בתחום התוכנה, ר"צ DBA בפרוייקט ממשלתי מטעם נאיה טכנולוגיות SQL Server מאפשר לנו לבצע טרנזאקציות מקוננות. טרנזאקציה מקוננת היא טרנזאקציה שעטופה בטרנזאקציה שנפתחה ברמה גבוהה יותר בקוד. כדי לברר את רמת הקינון (העומק) של הטרנזאקציה שבה אנו נמצאים אנו יכולים לבדוק בכל רגע את ערכו של משתנה המערכת TRANCOUNT@@ שמחזיר את מספר הטרנזאקציות הפתוחות ב scope הנוכחי בנקודת הזמן הנוכחית. כל קריאה ל BEGIN TRANSACTION פותחת טרנזאקציה מפורשת, ומעלה את ערכו של TRANCOUNT@@ באחד. כל קריאה ל...

מידול הירארכיה בשיטת Nested Sets ב-SQL Server

יום שני, ינואר 2, 2012

צח פניגשטיין יועץ SQL בכיר, בעל 10 שנות נסיון בתחום התוכנה, ר"צ DBA בפרוייקט ממשלתי מטעם נאיה טכנולוגיות Nested Sets היא שיטה למידול הירארכיה, השונה מהשיטה המקובלת. השיטה המקובלת למידול הירארכיה מתייחסת אל ההירארכיה כאל כעץ. ייצוג זה מכונה Adjacency List Model (ניתן לייצג בעזרתו גרפים, ולא רק עצים, אבל זה כבר דיון אחר). כל צומת בעץ (רשומה) מכילה את הנתונים הרלוונטיים לאובייקט, בתוספת מצביע לצומת אחר בעץ, שמשמש כ"אב" לצומת. הצומת העליונה ביותר בעץ מכילה הצבעה ריקה, והיא שרש העץ או הרמה הגבוהה ביותר בהירארכיה. ...