执行批量复制操作(ODBC)

ODBC 标准不支持直接支持 SQL Server 大容量复制作。 连接到 SQL Server 版本 7.0 或更高版本的实例时,SQL Server Native Client ODBC 驱动程序支持执行 SQL Server 大容量复制作的 DB-Library 函数。 此特定于驱动程序的扩展为使用大容量复制函数的现有 DB-Library 应用程序提供了简单的升级路径。 专用大容量复制支持位于以下文件中:

  • sqlncli.h

    包括大容量复制函数的函数原型和常量定义。 sqlncli.h 必须包含在执行大容量复制作的 ODBC 应用程序中,并且必须在编译应用程序的 include 路径中。

  • sqlncli11.lib

    必须位于链接器的库路径中,并指定为要链接的文件。 sqlncli11.lib 随 SQL Server Native Client ODBC 驱动程序一起分发。

  • sqlncli11.dll

    必须在执行时存在。 sqlncli11.dll 随 SQL Server Native Client ODBC 驱动程序一起分发。

注释

ODBC SQLBulkOperations 函数与 SQL Server 大容量复制函数没有关系。 应用程序必须使用特定于 SQL Server 的大容量复制函数来执行大容量复制作。

最小日志记录大容量副本

使用完全恢复模式时,大容量加载执行的所有行插入作都会完全记录在事务日志中。 对于大型数据加载,这可能会导致事务日志快速填充。 在某些情况下,可以进行最少的日志记录。 最小日志记录可减少大容量加载作填充日志空间的可能性,并且比完整日志记录更高效。

有关使用最小日志记录的信息,请参阅 批量导入中最小日志记录的先决条件

注解

在 SQL Server 2005 或更高版本中使用 bcp.exe 时,可能会在 SQL Server 2005 之前没有错误的情况下看到错误。 这是因为在更高版本中,bcp.exe 不再执行隐式数据类型转换。 在 SQL Server 2005 之前,如果目标表具有货币数据类型,则 bcp.exe 将数值数据转换为货币数据类型。 但是,在这种情况下,bcp.exe 只是截断了额外的字段。 从 SQL Server 2005 开始,如果文件类型与目标表之间不匹配,则如果有任何数据必须截断以适应目标表,bcp.exe 将引发错误。 若要解决此错误,请修复数据以匹配目标数据类型。 (可选)在 SQL Server 2005 之前的版本中使用 bcp.exe。

本节中

另请参阅

SQL Server Native Client (ODBC)
大容量导入和导出数据 (SQL Server)