מופע של תאריך

roavi

New member
מופע של תאריך

שלום לכל חברי הפורום, SQL SERVER 2000 , אני מעוניין לקבל בטבלה פורמט של תאריך DD/MM/YYYY , אני מעביר נתונים מקובץ טקסט אל טבלה ב SQL . אני עושה זאת באמצעות DTS . לצערי אני מקבל שנה לא הגיונית, למשל 2013 , או 2027 , כל מיני כאלה מופעים בטבלת היעד שלי. איפה יכולה להיות הבעיה שלי? תודה לכל המשיבים.
 

24sharon

New member
בשאילתת הכנסה למסד

תכניס בפורמט של YYYYMMDD אפשר בלי קווים מפרידים ואפשר עם YYYY-MM-DD כך הוא 'אף פעם' לא מתבלבל. הבעיה בתאריך הייתה שעל השרת הוא מוגדר כMM/DD/YYYY בהצלחה
 

roavi

New member
>>>

תודה על תגובתך, על איזה שרת את מתכוונת? שרת SQL או על שרת WIN NT 2000 ? אם על שרת SQL אז היכן מעדכנים את הפורמט שאמרת (YYYYMMDD). או אם על שרת WIN NT 2000 היכן מעדכנים את הפורמט (YYYYMMDD). תודה.
 

roavi

New member
>>>

בעזרת DTS , על המחשב שלי ישנה תיקייה המכילה קבצי טקסט. יש לי קובץ טקסט אחד לדוגמא שיש בו כמה נתונים בניהם נותן מסוג תאריך, המופיע בתצוגה הבאה: DD/MM/YY למשל 01/10/06 . נתוני קובץ זה מועברים את טבלה ב SQL בעזרת DTS , Data Transformation Services , בטבלת היעד יש שדה מסוג תאריך (DATETIME) גודל 8, שאמור לקלוט את התאריך מקובץ הטקסט. יש לי עוד קובץ טקסט אחר שגם בו יש נתון מסוג תאריך אבל מופיע בפורמט הבא: YYYY-MM-DD , קובץ זה מגיע לטבלה בSQL בעזרת DTS באותה שיטה כמו הקובץ הראשון. למרות כל זאת , אני עדיין מקבל מופע של תאריך לא הגיוני בקובץ הראשון. תודה.
 
אתה בטוח בפורמט של התאריך?

עושה רושם שהפורמט של התאריך שלך קצת שונה. האם הפורמט הוא באמת dd/mm/yyyy או שהוא dd/mm/yy? במידה ויש לך רק 2 ספרות בשנה ולא ארבע ספרות (כלומר הפורמט הוא dd/mm/yy), אז בהתנהגות ברירת המחדל של השרת כל מספר מתחת ל49, יחשב למאה הנוכחית וכל מספר מעל 49 יחשב למאה הקודמת. ניתן לשנות את ההתנהגות הנ"ל ע"י הפקודה sp_configure עם הפרמטר two digit year cutoff (ניתן לראות פרטים בBOL). בכל מקרה מדובר על שינוי שמשפיע על כל בסיסי הנתונים והאפליקציות שעובדות מול השרת, לכן עדיף לכתוב קוד קטן בתוך הDTS package, שיכניס את השנה הנכונה.
 

roavi

New member
>>תודה אני בודק

ואחזור עם תשובת במידה ויהיה שינוי לטובה
 
למעלה