
在 SQL Server 7.0 和更高版本中,可以选定排序规则在目标数据文件字段(用于大容量导出)或目标表的列(用于大容量导入)中储存数据,以此来控制数据的转化。数据文件次序规则和表列的顺序规则之间所需的任何转化都由导入和导出操作在外部执行。
注意
SQL Server 7.0 和更高版本支持指定代码页,但最好在格式化文件中选定排序规则。

在大容量导入和大容量导出操作中,排序规则仍然应用于 SQLCHAR 列。对于既没有指定 SQLCHAR 也没有指定 SQLNCHAR 作为其宿主数据类别的列bulk insert 指定列,将一直忽视为其指定的列顺序规则。在 ORDER 提示中引用 SQLCHAR 和 SQLNCHAR 列的大容量导入操作过程中,排序规则用于确认这种列的次序排序。
若应指定顺序规则,必须使用格式化文件。两种类别的格式化文件均支持指定列级排序规则。有关在非 XML 格式化文件中使用顺序规则的信息,请参看以下的“在非 XML 格式化文件中选定列级排序规则”部分。有关在 XML 格式化文件中使用顺序规则的信息,请参看了解 XML 格式化文件。
非 XML 格式化文件中的最终一列(序号位置为 8 的列)包含一个排序规则规范,其中定义了该列的数据以某种形式传输在数据文件中。排序规则列选项如下:

选项
说明
指定将数据传输至数据文件时使用的顺序规则名称。有关 SQL 排序规则名称的列表bulk insert 指定列,请参看 SQL Server 排序规则名称 (Transact-SQL)。

指定将数据传输至在命令的代码页选项或 bcp_control BCPFILECP 提示中选定的代码页中。如果两者均已指定,则数据文件的顺序规则即为客户端计算机的 OEM 代码页中的排序规则。
注意
有关代码页选项的详尽信息,请参看下面本主题中的“使用代码页”。有关详细信息,请参看 bcp_control 中的 BCPFILECP 提示。

与 RAW 含义同样。
以下示例显示的是一个非 XML 格式化文件,其中为数组 2 和 3 指定了列顺序规则。排序规则信息以粗体显示。
9.0
4
1 SQLCHAR 0 7 "\t" 1 DepartmentID ""
2 SQLCHAR 0 100 "\t" 2 Name SQL_Latin1_General_CP1_CI_AS
3 SQLCHAR 0 100 "\t" 3 GroupName SQL_Latin1_General_CP1_CI_AS
4 SQLCHAR 0 24 "\r\n" 4 ModifiedDate ""
注意
上面的格式化文件用于 AdventureWorks2008R2 示例中的 HumanResources.Department 表,该表有 4 列:DepartmentID、Name、GroupName 和 ModifiedDate。
有关非 XML 格式化文件的详尽信息,请参看了解非 XML 格式化文件。
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-140824-1.html
不行