ייצור אוטומטי של סקריפטי התקנה והסרה של SQL CLR Functions / Stored Procedures

17 בNovember 2015

לפני כמה ימים פרסמתי פוסט על משהו קטן שעבדתי עליו בין תרגיל אינפי לתרגיל לינארית, שכולל למעשה אוסף של functions ו- stored procedures המאפשרים עבודה מול Redis מ- SQL Server, כאשר מרבית הפרוייקט זה סה”כ תפירה בין קוד C# קיים לעבודה מול Redis ל- SQL Server – שמתבצעת באמצעות SQL CLR, פיצ’ר חביב (למרות שהיה יכול להיות טוב משמעותית) שמאפשר לשלב ולכתוב רכיבים שונים בדטאבייס (functions, stored procedures וכו’) ב- C#. הדרישה שהייתה לי לצרכי פיתוח הייתה פשוטה – שבסוף כל build יהיה לי קובץ install.sql שכשאני מריץ אותו הוא מכיל את כל ה- CREATE statements של ה- CLR...
תגיות: , ,
אין תגובות

SQL: להפוך XML במבנה לא ידוע (חלקית) לתצוגה טבלאית

14 בNovember 2015

היכולת לעבוד עם XML-ים ב- SQL Server לא חדשה בכלל וקיימת מזה גרסאות. בין הדברים שמתאפשרים בעבודה עם XML-ים זה אכסון XML-ים בטבלאות באמצעות datatype מותאם לכך, פונקציות לפירסור XML, ויכולת לייצא תוצאות של שאילתות לפורמט XML במקום לפורמט טבלאי. למשל, אם אנחנו רוצים לשלוף מ- sys.tables ולהציג את התוצאות כ-XML בפורמט טבלאי, כל שצריך לעשות זה להוסיף FOR XML statement בסוף. ניתן בצורה הזאת גם להשיג שליטה מוגבלת על מבנה ה-XML שמתקבל. למשל, בדוגמא הבאה, אני מגדיר שיהיה root element בשם items ושכל שורה תהיה עטופה בתור item: SELECT *FROM sys.tablesFOR XML PATH('item'), ROOT('items') ככה ייראה ה-XML שיתקבל: אבל,...
תגיות: , ,
אין תגובות

RediSql–קליינט לעבודה מול Redis מ- SQL Server

12 בNovember 2015

אמ’לק: RediSql הוא קליינט אופן-סורסי חדש שזמין כעת, המאפשר עבודה מול דטאבייס Redis מ- T-SQL (כלומר, מ-SQL Server). להורדה והוראות התקנה. מה זה Redis? Redis הוא שרת in-memory database, המאפשר לאכסן מידע בתצורה של key-value pairs. מדובר בשרת מאד פופולרי, בעל ביצועים גבוהים, פשוט להתקנה ולשימוש. השימושים של Redis מגוונים, ויכולים לנוע בתרחישי שימוש רבים הנעים מ-caching (שימוש מאד פופולרי ב- Redis) ועד למנגנוני pub/sub פשוטים שדורשים ביצועים גבוהים. ההתקנה של Redis פשוטה מאד (הגרסא הרשמית היא רק למערכות *nix, אבל יש גם גרסא ל-Windows). ל- Redis יש מגוון קליינטים אבל עד עתה לא היה ל- SQL Server (שמאפשר לעבוד עם Redis...
תגיות: , , ,
2 תגובות