Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Um buffer adiado é aquele cujo valor é usado em algum momento depois que você o especifica em uma chamada de função. Por exemplo, você usa SQLBindParameter para associar ou vincular um buffer de dados a um parâmetro em uma instrução SQL. Especifique o número do parâmetro e passe o endereço, o comprimento do byte e o tipo do buffer. O driver salva essas informações, mas não examina o conteúdo do buffer. Posteriormente, quando você executa a instrução, o driver recupera as informações e as usa para recuperar os dados do parâmetro e enviá-los para a fonte de dados. Portanto, a entrada de dados no buffer é adiada. Como os buffers adiados são especificados em uma função e usados em outra, é um erro de programação de aplicativo liberar um buffer adiado enquanto o driver ainda espera que ele exista. Para obter mais informações, consulte Alocando e liberando buffers, mais adiante nesta seção.
Tipos de buffer adiados
Tanto o buffer de entrada quanto o de saída podem sem adiados. A tabela a seguir resume os usos de buffers adiados. Observe que os buffers adiados vinculados às colunas do conjunto de resultados são especificados com SQLBindCol e os buffers adiados vinculados aos parâmetros de instrução SQL são especificados com SQLBindParameter.
| Uso do buffer | Tipo | Especificado com | Usado por |
|---|---|---|---|
| Enviando dados para parâmetros de entrada | Entrada adiada | SQLBindParameter |
SQLExecute SQLExecDirect |
| Enviando dados para atualizar ou inserir uma linha em um conjunto de resultados | Entrada adiada | SQLBindCol |
SQLSetPos SQLBulkOperations |
| Retornando dados para saída e parâmetros de entrada/saída | Saída adiada | SQLBindParameter |
SQLExecute SQLExecDirect |
| Retornando dados do conjunto de resultados | Saída adiada | SQLBindCol |
SQLFetch SQLFetchScroll SQLSetPos |