Realização de Operações de Cópia em Massa (ODBC)

Aplica-se a: SQL ServerBase de Dados SQL do AzureAzure SQL Managed InstanceAzure Synapse AnalyticsSistema de Plataforma de Análise (PDW)

O padrão ODBC não suporta diretamente operações de cópia em massa do SQL Server. Quando ligado a uma instância de SQL Server versão 7.0 ou posterior, o driver ODBC do SQL Server Native Client suporta as funções DB-Library que realizam SQL Server operações de cópia em massa. Esta extensão específica do driver oferece um caminho fácil de atualização para aplicações de DB-Library existentes que utilizam funções de cópia em massa. O suporte especializado para cópia em massa encontra-se nos seguintes ficheiros:

  • sqlncli.h

    Inclui protótipos de funções e definições constantes para funções de cópia em massa. sqlncli.h deve estar incluído na aplicação ODBC que realiza operações de cópia em massa e deve estar no caminho de inclusão da aplicação quando for compilado.

  • sqlncli11.lib

    Deve estar no caminho da biblioteca do linker e especificado como ficheiro a ser ligado. sqlncli11.lib é distribuído com o driver ODBC do SQL Server Native Client.

  • sqlncli11.dll

    Deve estar presente na hora da execução. sqlncli11.dll é distribuído com o driver ODBC SQL Server Native Client.

Note

A função ODBC SQLBulkOperations não tem relação com as funções de cópia em massa do SQL Server. As aplicações devem utilizar as funções de cópia em massa específicas do SQL Server para realizar operações de cópia em massa.

Registo mínimo de cópias em massa

Com o modelo Full Recovery, todas as operações de inserção de linhas realizadas por carregamento em massa são totalmente registadas no registo de transações. Para cargas de dados grandes, isto pode fazer com que o registo de transações se encha rapidamente. Em certas condições, é possível reduzir o mínimo de exploração de madeira. O registo mínimo reduz a possibilidade de uma operação de carga a granel preencher o espaço do registo e é também mais eficiente do que o registo completo.

Para informações sobre o uso de registos mínimos, consulte Pré-requisitos para Registo Mínimo em Importação em Massa.

Observações

Ao usar bcp.exe em SQL Server 2005 (9.x) ou posterior, pode ver erros em situações em que não havia erros antes de SQL Server 2005 (9.x). Isto deve-se ao facto de, nas versões posteriores, bcp.exe já não realiza conversão implícita de tipos de dados. Antes de SQL Server 2005 (9.x), bcp.exe convertia dados numéricos num tipo de dados monetário, se a tabela alvo tivesse um tipo de dados monetário. No entanto, nessa situação, bcp.exe simplesmente truncar campos extra. A partir de SQL Server 2005 (9.x), se os tipos de dados não coincidirem entre o ficheiro e a tabela de destino, bcp.exe gerará um erro se houver algum dado que tenha de ser truncado para caber na tabela de destino. Para resolver este erro, corrige os dados para corresponderem ao tipo de dado alvo. Opcionalmente, use bcp.exe de uma versão anterior a SQL Server 2005 (9.x).

Na presente seção