Partilhar via


IRowsetFastLoad::Commit (OLE DB)

Aplica-se a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsSistema de Plataforma de Análise (PDW)Base de dados SQL no Microsoft Fabric

Baixar driver OLE DB

Marca o fim de um lote de linhas inseridas e escreve as linhas na tabela do SQL Server. Para exemplos, consulte Copiar Dados em Massa Usando IRowsetFastLoad (OLE DB) e Enviar Dados BLOB para SQL SERVER Usando IROWSETFASTLOAD e ISEQUENTIALSTREAM (OLE DB).

Sintaxe

  
HRESULT Commit(  
      BOOL fDone);  

Arguments

fDone[in]
Se FALSE, o conjunto de linhas mantém a validade e pode ser usado pelo consumidor para inserção adicional de linhas. Se TRUE, o conjunto de linhas perde validade e o consumidor não pode fazer mais inserção.

Valores do código de retorno

S_OK
O método teve sucesso e todos os dados inseridos foram escritos na tabela do SQL Server.

E_FAIL
Ocorreu um erro específico do fornecedor. Recupere a informação de erro do texto específico do erro junto do fornecedor.

E_UNEXPECTED
O método foi chamado num conjunto de linhas de cópias em massa anteriormente invalidado pelo método IRowsetFastLoad::Commit .

Observações

Um conjunto de linhas de cópia em massa com cópia em massa de um Driver OLE DB para SQL Server comporta-se como um conjunto de linhas em modo de atualização atrasada. À medida que o utilizador insere dados de linhas através do conjunto de linhas, as linhas inseridas são tratadas da mesma forma que as inserções pendentes num conjunto de linhas que suporta IRowsetUpdate.

O consumidor deve chamar o método Commit no conjunto de linhas de cópia em massa para escrever linhas inseridas na tabela do SQL Server, da mesma forma que o método IRowsetUpdate::Update é usado para submeter linhas pendentes a uma instância do SQL Server.

Se o consumidor libertar a sua referência no conjunto de linhas de cópias em massa sem chamar o método Commit , todas as linhas inseridas não previamente escritas são perdidas.

O consumidor pode inserir linhas em lote chamando o método Commit com o argumento fDone definido como FALSE. Quando o fDoneé definido como TRUE, o conjunto de linhas torna-se inválido. Um conjunto de linhas de cópia em massa inválido suporta apenas a interface ISupportErrorInfo e o método IRowsetFastLoad::Release .

Ver também

IRowsetFastLoad (OLE DB)