Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

It seems like SQL Server 2008 does not support code page 65001 when using Bulk Insert. If I use other code pages, my data is corrupted when imported. Is there a way to insert my UTF8 data properly in SQL Server 2008 using scripts?

share|improve this question

1 Answer 1

SQL Server supports unicode, but like Java, it only uses UTF-16 Little Endian (also called UCS-2) for unicode data in NCHAR, NVARCHAR, and NTEXT fields. I assume you're talking about the BCP utility, which supports only UCS-2 data on import (it will not convert UTF-8).

Other SQL server tools may support on-the-fly conversion of UTF-8 data (for example, SQL Server Integration Services (SSIS)). However, you may just be better off preprocessing your files with an open source command-line tool to do UTF-8 to UTF-16 Little Endian and then using BCP if that is your tool preference.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.