Compartir a través de


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

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Importante

SQL Server Native Client (a menudo abreviado SNAC) se ha quitado de SQL Server 2022 (16.x) y SQL Server Management Studio 19 (SSMS). Para nuevos trabajos de desarrollo, no se recomiendan ni el proveedor OLE DB de SQL Server Native Client (SQLNCLI o SQLNCLI11) ni el proveedor OLE DB de Microsoft para SQL Server (SQLOLEDB) heredado. Cambie al nuevo Controlador Microsoft OLE DB para SQL Server de ahora en adelante.

Marca el final de un lote de filas insertadas y escribe las filas en la tabla SQL Server . Para ver ejemplos, consulte Copiar datos de forma masiva mediante IRowsetFastLoad (OLE DB) y Enviar datos de blob a SQL Server mediante IROWSETFASTLOAD e ISEQUENTIALSTREAM (OLE DB).

Sintaxis

  
HRESULT Commit(  
      BOOL fDone);  

Argumentos

fDone[in]
Si es FALSE, el conjunto de filas mantiene la validez y el consumidor puede usarlo para una inserción de filas adicional. Si es TRUE, el conjunto de filas pierde su validez y el consumidor no puede realizar ninguna inserción más.

Valores de código de retorno

S_OK
El método se ejecutó correctamente y todos los datos insertados se escribieron en la tabla SQL Server.

E_FAIL
Se produjo un error específico del proveedor. Recupere la información de error para el texto de error específico del proveedor.

E_UNEXPECTED
Se ha llamado al método en un conjunto de filas de copia masiva previamente invalidado por el método IRowsetFastLoad::Commit.

Observaciones

Un conjunto de filas de copia masiva del proveedor OLE DB SQL Server Native Client se comporta como un conjunto de filas en modo de actualización retrasada. A medida que el usuario inserta los datos de fila a través del conjunto de filas, las filas insertadas reciben el mismo trato que las inserciones pendientes en un conjunto de filas que admite IRowsetUpdate.

El consumidor debe llamar al método Commit en el conjunto de filas de copia masiva para escribir las filas insertadas en la tabla de SQL Server del mismo modo en que se usa el método IRowsetUpdate::Update para enviar las filas pendientes a una instancia de SQL Server.

Si el consumidor libera su referencia en el conjunto de filas de copia masiva sin llamar al método Commit, se perderán todas las filas insertadas que no se hayan escrito previamente.

El consumidor puede procesar por lotes las filas insertadas mediante una llamada al método Commit con el argumento fDone establecido en FALSE. Cuando fDone se establece en TRUE, el conjunto de filas deja de ser válido. Un conjunto de filas de copia masiva que no es válido solo admite la interfaz ISupportErrorInfo y el método IRowsetFastLoad::Release.

Consulte también

IRowsetFastLoad (OLE DB)