30 Haziran 2009 Salı

"[Microsoft][SQL Native Client ]Unexpected EOF encountered in BCP data-file"

HATA MESAJI:
"[Microsoft][SQL Native Client ]Unexpected EOF encountered in BCP data-file"

AÇIKLAMA:
BCP aracı ile, CSV biçimindeki bir dosyadan veritabanınıza veri aktarmaya çalışırken böyle bir hata mesajı ile karşılaşabilirsiniz.

ÇÖZÜM:
Sorunun nedeni, CSV biçimindeki dosyanızda kullanılan ayraçların (delimiters), komutunuzdaki ayraçtan farklı olmasıdır.

Örneğin, CSV dosyanız içerisindeki ayraç eğer virgül ise ve siz BCP komutunuzda herhangi bir ayraç belirtmediyseniz bu hata ile karşılaşırsınız. Varsayılan ayraç ise sekmedir. Virgül ayracının kullanılmadığı komut örneği:

BCP Veritabanim.dbo.Tablom in c:\dosya.csv -T -c -S sunucu_adi\instance_adi

Görüldüğü gibi bu komutta ayraç olarak virgül belirtilmemiş. Virgül ayracının belirtilmesi için "-t" parametresinin kullanılması gerekiyor.