Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

When using PowerShell, you can specify the codepage with the ‘-Encoding’ parameter when reading or writing files. For example, to read a file in encoded as UTF-8, you would use:

Get-Content -Path "C:\Path\To\File.txt" -Encoding UTF8

For SQL Server, you can specify the encoding for a particular column or table by setting the ‘COLLATE’ property to the appropriate encoding. For example, to create a new table with a column using UTF-8 encoding, you would use:

CREATE TABLE [dbo].[MyTable] (
    [MyColumn] VARCHAR(50) COLLATE utf8_general_ci
)

Finally, when using the SQLBulkCopy class in .NET, you can specify the encoding by setting the ‘DestinationTableName’ property to include the appropriate ‘CharacterSet’ value. For example, to bulk copy data to a table using UTF-8 encoding, you would use:

SqlBulkCopy bulkCopy = new SqlBulkCopy(connectionString);
bulkCopy.DestinationTableName = "MyTable";
bulkCopy.DestinationTableName += " WITH (DATAFILETYPE = 'char', "
bulkCopy.DestinationTableName += "      CHARACTERSET = 'utf-8')";
bulkCopy.WriteToServer(data);