הבלוג של גרי רשף

22/06/2011

באג מוזר: פונקציית הטקסט Right בסביבת SQL Server 2005

שייך לקטגוריה: Uncategorized — תגים: , , — גרי רשף @ 19:15

הרצתי את הפקודה הבאה ב-SQL 2005 וקיבלתי Null:

Select Right(Cast('abcd' As Varchar(Max)),0);
--

clip_image002

הרצתי ב-SQL 2008 וקיבלתי מחרוזת ריקה:

clip_image004

עם פונקציות המחרוזת האחרות (Left, Substring) או עם משתנים שאינם באורך Max – לא הייתה בעייה, וקיבלתי כצפוי מחרוזת ריקה (כלומר- מחרוזת באורך 0).

איך הגעתי לפינה המוזרה הזו? הקוד שפירסמתי בפוסט הקודם- נכתב ורץ במקור ב-2005, אך כשבדקתי במקרה ב-2008 התברר שאינו עובד נכון, ורק לאחר ניסוי וטעייה – עליתי על הסיבה לכך (מה שהתפרסם לבסוף – תקין ורץ בכל הסביבות).

להגיב »

אין תגובות.

פיד RSS של התגובות על הרשומה הזו טרקבאק קישור

כתיבת תגובה

Fill in your details below or click an icon to log in:

WordPress.com Logo

אתה מגיב באמצעות חשבון WordPress.com שלך. Log Out / לשמור )

Twitter picture

אתה מגיב באמצעות חשבון Twitter שלך. Log Out / לשמור )

Facebook photo

אתה מגיב באמצעות חשבון Facebook שלך. Log Out / לשמור )

Connecting to %s

ערכת עיצוב: Shocking Blue Green. בלוג בוורדפרס.קום.

Follow

Get every new post delivered to your Inbox.

הצטרפו אל 25 שכבר עוקבים אחריו