IRowsetFastLoad::Commit (provedor de OLE DB Native Client)

Aplica-se a: simSQL Server (todas as versões compatíveis) SimBanco de Dados SQL do Azure SimInstância Gerenciada do Azure SQL simAzure Synapse Analytics simParallel Data Warehouse

Marca o término de um lote de linhas inseridas e escreve as linhas na tabela SQL Server . Para obter exemplos, confira Copiar Dados em massa usando IRowsetFastLoad (OLE DB) e Enviar dados de blob para o SQL Server usando IROWSETFASTLOAD e ISEQUENTIALSTREAM (OLE DB).

Sintaxe

  
HRESULT Commit(  
      BOOL fDone);  

Argumentos

fDone[in]
Se FALSE, o conjunto de linhas manterá validade e poderá ser usado pelo consumidor para inserção de linha adicional. Caso seja TRUE, o conjunto de linhas perde validade e nenhuma inserção adicional pode ser feita pelo consumidor.

Valores do código de retorno

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

E_FAIL
Ocorreu um erro específico de provedor. Recupere informações de erro para o texto de erro específico do provedor.

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

Comentários

Um cliente nativo OLE DB de linhas de cópia em massa do provedor se comporta como um conjuntos de linhas de modo SQL Server de atualização atrasada. Conforme o usuário insere dados de linha pelo conjunto de linhas, as linhas inseridas são tratadas da mesma forma que as inserções pendentes em um conjunto de linhas que dá suporte a IRowsetUpdate.

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

Caso o consumidor libere a referência no conjunto de linhas de cópia em massa sem chamar o método Commit, todas as linhas inseridas não gravadas previamente serão perdidas.

O consumidor pode processar em lotes as linhas inseridas chamando o método Commit com o argumento fDone definido como FALSE. Quando fDone é definido como TRUE, o conjunto de linhas se torna inválido. Um conjunto de linhas de cópia em massa inválido dá suporte apenas à interface ISupportErrorInfo e ao método IRowsetFastLoad::Release.

Consulte Também

IRowsetFastLoad (OLE DB)