FileTable ב-SQL Server 2012

22/12/2011

הקדמה רקע קצרה: יתכן מצב בו נשקול אפשרות לשלב קבצים בבסיס הנתונים (הכוונה לקבצי טקסט, Office, גרפיקה, וידאו, קול וכו'; ולא לקבצי mdf..). תסריטים אפשריים: 1. למשאבי אנוש מגיעים קבצי קורות חיים של עובדים ורוצים לשמור אותם בבסיס הנתונים (במקום לאתר את המועמד בדטבייס ולחפש במיילים או במחיצות את קובץ ה-Word שהוא שלח). 2. עבדתי פעם בחברה שייצרה מוצר צריכה נפוץ, חנויות ששמו את המוצרים של החברה במקום בולט זכו לתגמול, וסוכני המכירות היו עורכים ביקורות – מצלמים ושומרים על קשר אישי. התמונות נשמרו במחיצה עם שם שכלל את מספר הלקוח,...
תגיות: ,
אין תגובות

פתרון לבעיית ה-Pivot הדינאמי

20/12/2011

הביטוי ניצחון פירוס מתאר מצב בו מחיר פתרון הבעייה הוא כזה שכבר עדיף היה להמשיך לחיות בשלום ובחירוק שיניים עם הבעייה, מאשר בחירוף נפש עם פתרונה; ופתרון מעין זה אני מציג כאן לבעיית ה-Pivot הדינאמי. הקדמה קצרה- את הקריירה שלי במסדי נתונים התחלתי ב-Access, עוד בימי Windows 3.11 העליזים כשכל יישום נקנה בנפרד ולא כמו היום בחבילת Ofiice, והתפרס על פני יותר מעשרה דיסקטים "3.5.. בכל מה שקשור ל-SQL עבדתי כמקובל עם הממשק הגרפי הנוח שלו (הממשק הטקסטואלי בלתי שימושי לחלוטין), ונדהמתי לגלות שיש מפתחים שמסוגלים לכתוב משפטי SQL בעצמם.. חלפו...
תגיות: ,
2 תגובות

אילו ג'ובים רצים כרגע / רצו קודם (2)?

19/12/2011

לפני כחודש וחצי פרסמתי פוסט בו הצעתי דרך מעט מסורבלת להציג מידע על ג'ובים שרצים כרגע. השליפה התבססה על הפלטים של פרוצדורות המערכת SP_Help_Job ו-SP_Help_JobActivity מכיוון שלא מצאתי את המידע המבוקש בטבלאות המערכת. בזמן שעבר מאז הצלחתי להגיע למידע החסר, ולהרחיב את הסקריפט הקודם כך שיציג מידע לגבי הג'ובים שרצים כרגע ושרצו קדם, כולל הצעדים השונים שלהם. השליפה מעט כבדה, מצריכה הרשאות קריאה מ-msdb, והנה היא לפניכם: Select SJ.name, ...
תגיות: ,
אין תגובות

ההבדל בין Inline Table-Valued Functions ו-Multistatement Table-valued Functions

07/12/2011

אם נעיין בטבלת המערכת sys.objects אנחנו צפויים לזהות שני סוגים של פונקציות המחזירות טבלה: Use AdventureWorks; Go   Select * From sys.objects Where type Like '_F'; Inline Table-Valued Functions (להלן Inline) – פונקציה הכוללת (חוץ מההגדרות הטריוויאליות) – פקודת Select בודדה שעושה שימוש בפרמטרים של הפונקציה ומחזירה טבלה (סט), וכפי שנראה בהמשך- מדובר ב-View משופר. Multistatement Table-valued Functions (להלן Multistatement)– פונקציה שיכולה לכלול מספר פקודות שבמהלכן מוכנסות שורות למשתנה טבלה שהוגדר...
תגיות: ,
אין תגובות

שימוש בערכי ברירות לפרמטרים בפרוצדורות ופונקציות

01/12/2011

בפרוצדורות ופונקציות ניתן לתת לפרמטרים שהן מקבלות ערכי ברירת מחדל, ואזי ניתן להפעילן מבלי לציין במפורש את ערך הפרמטר; כמובן בהנחה שאנחנו מעוניינים שהוא יקבל את ערך ברירת המחדל ולא אחר. זה הופך אותן לנוחות לשימוש, למשל- בעבר הצגתי פרוצדורה להעתקת נתוני טבלה מהייצור לפיתוח. בגרסה בה אני משתמש במקום העבודה ניתן להפעיל את הפרוצדורה עם שם הטבלה בלבד, והיא "תדע" לפנות לשרת הייצור המצויין כברירת מחדל. אם ארצה להעתיק משרת אחר- אציין אותו במפורש בהפעלה. באופן דומה- אני מניח ששם הדטבייס בשרת ממנו מעתיקים הוא כשם הדטבייס בו אני נמצא (פונקציית המערכת ()DB_Name), אלא אם...
תגיות: ,
אין תגובות