Share via


UseCollation Property

This feature will be removed in a future version of Microsoft SQL Server. Avoid using this feature in new development work, and plan to modify applications that currently use this feature.

The UseCollation property maintains column-level collation settings when transferring data between computers running an instance of Microsoft SQL Server.

Syntax

object.UseCollation [= value]

Parts

  • object
    An expression that evaluates to an object in the Applies To list

  • value
    TRUE or FALSE

Data Type

Boolean

Modifiable

Read/write

Prototype (C/C++)

HRESULT GetUseCollation(LPBOOL pRetVal);
HRESULT SetUseCollation(BOOL NewValue);

Remarks

By default, UseCollation is set to FALSE.

If UseCollation is set to TRUE, column-level collation settings are maintained when transferring data between computers running an instance of SQL Server 2000 or later if the code pages are the same on both servers. When data is transferred to a computer running an instance of SQL Server 2000 or later using a different code page, all collation settings at the source server are automatically translated to the code page of the destination server if the code pages settings are different.

When data is transferred to a computer running an instance of SQL Server version 7.0 or earlier, all collation settings at the source server are automatically translated to the code page of the destination server if the code pages settings are different. The source database column-level collation is translated accordingly.

If UseCollationis set to FALSE, direct data transfer is performed if the code pages are the same on both servers. If the code pages are different, the data is translated from source code page to destination code page. If both computers are running SQL Server 2000 or later and the source and destination databases are using different code pages, data might be translated to the incorrect code page setting depending on whether the column is using the default or a nondefault collation.

Note

Setting UseCollation to TRUE can result in a increase in performance overhead if the data contains non-Unicode data types such as text or varchar. Performance can also be affected by the number of tables, columns, and rows in the source database.

Note

If an application calls UseCollation on an instance of SQL Server 7.0, the operation is ignored.

Applies To: