SQL Bulk Copy supports most SQL Server data types.

For reference types, the column binding methods include:

BindBinary
BindChar
BindNChar
BindNVarChar
BindNVarCharMax
BindVarBinary
BindVarBinaryMax
BindVarChar
BindVarCharMax


For value types, the column binding methods include:

BindBigInt
BindBit
BindDate
BindDateTime
BindDateTime2
BindDateTimeOffset
BindDecimal
BindFloat
BindInt
BindMoney
BindNullableBigInt
BindNullableBit
BindNullableDate
BindNullableDateTime
BindNullableDateTime2
BindNullableDateTimeOffset
BindNullableDecimal
BindNullableFloat
BindNullableInt
BindNullableMoney
BindNullableReal
BindNullableSmallDateTime
BindNullableSmallInt
BindNullableSmallMoney
BindNullableTime
BindNullableTinyInt
BindNullableUniqueIdentifier
BindReal
BindSmallDateTime
BindSmallInt
BindSmallMoney
BindTime
BindTinyInt
BindUniqueIdentifier


The return value for all column binding methods is a strongly typed instance of ITypedBulkCopyBoundColumn.

Where a database column is an identity column, or the column allows null values and you do not want to supply values, the SkipColumn method can be used.

You need to use one of the Bindxxx methods, or SkipColumn, for each column in the destination table.

Bound column instances are used to supply values per row for the bound column, so you need to maintain a reference to them.

 Connection Properties Data Transfer