Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
As aplicações podem realizar operações de atualização em massa, eliminação, busca ou inserção na tabela subjacente na fonte de dados com uma chamada ao SQLBulkOperations. Chamar SQLBulkOperations é uma alternativa conveniente à construção e execução de uma instrução SQL. Permite que um driver ODBC suporte atualizações posicionadas mesmo quando a fonte de dados não suporta instruções SQL posicionadas. Faz parte do paradigma de alcançar acesso completo à base de dados através de chamadas de funções.
O SQLBulkOperations opera no conjunto de linhas atual e só pode ser usado após uma chamada ao SQLFetch ou SQLFetchScroll. A aplicação especifica as linhas a atualizar, eliminar ou recarregar, guardando em cache os seus marcadores. O driver recupera os novos dados para as linhas a atualizar, ou os novos dados para serem inseridos na tabela subjacente, a partir dos buffers de rowset.
O tamanho do conjunto de linhas a ser usado pelo SQLBulkOperations é definido por uma chamada ao SQLSetStmtAttr com o atributo SQL_ATTR_ROW_ARRAY_SIZE. Ao contrário do SQLSetPos, que usa um novo tamanho de conjunto de linhas apenas após uma chamada para SQLFetch ou SQLFetchScroll, o SQLBulkOperations usa o novo tamanho de conjunto de linhas após a chamada para SQLSetStmtAttr.
Como a maior parte da interação com bases de dados relacionais é feita através de SQL, o SQLBulkOperations não é amplamente suportado. No entanto, um driver pode facilmente emulá-lo construindo e executando uma instrução UPDATE, DELETE ou INSERT .
Para determinar que operações o SQLBulkOperation suporta, uma aplicação chama SQLGetInfo com a opção de informação SQL_DYNAMIC_CURSOR_ATTRIBUTES1, SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1, SQL_KEYSET_CURSOR_ATTRIBUTES1 ou SQL_STATIC_CURSOR_ATTRIBUTES1 (dependendo do tipo de cursor).
Esta seção contém os seguintes tópicos.