sql server and microsoft tools

yochi24

New member
sql server and microsoft tools ../images/Emo35.gif

קיבלתי במייל קובץ מג´יק בשם st.txt שמגיע בפורמט ascii כאשר סוף כל שורה מוקלד עם התו (ותקנו אותי אם אני טועה בשם התו) שנקרא Line return cursor. וכשאני מנסה לטעון אותו לטבלה דרך ה-DTS ב-sql server העברית נראית כג´בריש ובבחירת אפשרות הצגה :OEM העברית הפוכה.למה ואיך אפשר לתקן זאת?????????? מצורף כאן הקובץ st.txt 1. כשאני פותחת את הקובץ בDOS במערכת הפעלה Windows 2000 דרך start->run עם הפקודה command, העברית שבקובץ מתקבלת כג´יבריש. ניסית לפתוח את הקובץ בexcel ובחרתי באשף ייבוא טקסט את האפשרות של ´מקור קובץ´ :MS-DOS (pc-8) וניסיתי לפתוח אותו ב-notepad אך הבעיה נשארה. העברית מופיעה כג´יבריש או הפוכה. למה? ואיך אפשר לפתור זאת?. 2. לאחר שביקשתי שישלחו לי שוב את הקובץ עם עברית (בשםst2.txt)צצה בעיה אחרת: כשאני פותחת את הקובץ ב-notepad העברית בסדר אך אין הפרדה בין השורות ובנוסף,בexcel וב- ,notepad לשדות מסוימים נכנס תו לא מזוהה בצורת ריבוע קטן שמפריע לקליטת הנתונים ב-DTS. האם משהו בתרגום מascii ל-ansii נעלם וגורם לתו סוף שורה להעלם ?????
 

elileiba

New member
צורת קליטה אלטרנטיבית של קבצים כאלה

תנסי לקלוט ע"י ]קודת bulk insert מתוך sql server ה collation של ה database צריך להיות עברית תקראי על הפקודה ותיישמי בהצלחה אלי
 

yochi24

New member
או.קה, אבל...

איפה אני רושמת פקודה זו? ב-souce tag/transformations tag של transform data task? כי אם הפקודה פעולת על טבלה איך אני מפעילה אותה על קובץ מקור בDTS? מכניסה את הנתונים לטבלה זמנית? הDTS שלי בנוי כך: הקובץ הבעיתי----->טבלת יעד ב-DB מה זה collation????????
 

elileiba

New member
זה בא במקום dts

את צריכה להפעיל stored procedure שבתוכה יש פקודת tsql ששמה bulk insert שקולטת לתוך טבלה תוכן של קובץ טקסט זה קיים כבר מ sql server 7 אלי
 

אילן די

New member
בכלל מומלץ להשתמש ב- BCP

במקום DTS. בעיקר כשמדובר בקבצים גדולים. חלק מפקודות ה- DTS מבצעות INSERTS וזה גורם להתנפחות הלוג (Transaction log). כשמשתמשים ב- BCP - המידע נכנס ישירות לקובץ ה- MDF ואין כתיבה ללוג.
 

elileiba

New member
קליטה ע"י bcp

בעקרון זה נכון אבל שיש קליטה של קובץ טקסט אחד אפשר לעשות זאת ע"י bulk insert אחד מתוך sql ולא לכתוב bcp שהיא פקודה חיצונית bcp טוב למנשקים ותהליכים שמערבים טעינת כמה קבצים
 
למעלה