Instantâneo
Um instantâneo é um conjunto de registros que reflete uma exibição estática dos dados conforme existiam o instantâneo foi criada naquele momento. Quando você abrir o instantâneo e passar para todos os registros, o conjunto de registros que contém e seus valores não mudam até que você recria o instantâneo chamando Requery.
Dica
Este tópico se aplica às classes ODBC do MFC.Se você estiver usando o MFC DAO classifica em vez das classes MFC ODBC, consulte CDaoRecordset::Open para obter uma descrição de conjuntos de registros de instantâneo- tipo.
Você pode criar instantâneos atualizável ou somente leitura por meio das classes base de dados. Ao contrário de um dynaset, um instantâneo atualizado não reflete alterações nos valores do registro feitas por outros usuários, mas reflete as atualizações e exclusões feitas pelo programa. Os registros adicionados a um instantâneo não ficam visíveis para o instantâneo até que você chame Requery.
Dica
Um instantâneo é um cursor estático ODBC.Os cursores estáticos não são de fato uma linha de dados até que você rolar o registro.Para garantir que todos os registros serem recuperados imediatamente, você pode colocar o final do conjunto de registros e depois colocar o primeiro registro que você deseja consultar.Observe, entretanto, que rolar a extremidade envolve a sobrecarga adicional e pode reduzir o desempenho.
Os instantâneos são os mais úteis quando você precisa dos dados de permanecer fixos durante as operações, como quando você estiver gerando um relatório ou está executando cálculos. Porém, a fonte de dados pode divergir consideravelmente do instantâneo, de modo que talvez você queira a recriação de vez em quando.
Suporte de instantâneo é baseado na biblioteca de cursores ODBC, que fornece os cursores estáticos e atualizações posicionadas (necessários para o updateability) para todo o driver de nível 1. A DLL de biblioteca de cursores deve ser carregado em memória para esse suporte. Quando você cria um objeto de CDatabase e chama a função de membro de OpenEx , você deve especificar a opção de CDatabase::useCursorLib do parâmetro de dwOptions . Se você chamar a função de membro de Abrir , a biblioteca de cursores são carregadas por padrão. Se você estiver usando dynasets em vez de instantâneos, você não quiser fazer com que a biblioteca de cursores a ser carregada.
Os instantâneos estarão disponíveis somente se a biblioteca de cursores ODBC foi carregada quando o objeto de CDatabase foi construído ou o driver ODBC que você está usando cursores estáticos da suporte.
Dica
Para alguns drivers ODBC, os instantâneos (cursores estáticos) podem não ser atualizada.Verificar seu driver que a documentação do tipos de cursor com suporte e os tipos de simultaneidade oferecem suporte a.Para garantir instantâneos atualizável, certifique-se de carga a biblioteca de cursores na memória quando você cria um objeto de CDatabase .Para obter mais informações, consulte ODBC: A biblioteca de cursores ODBC.
Dica
Se você quiser usar instantâneos e dynasets, você deve baseá-los em dois objetos diferentes de CDatabase (duas conexões diferentes).
Para obter mais informações sobre compartilhamento de instantâneos de propriedades com todos os conjuntos de registros, consulte Conjunto de registros (ODBC). Para obter mais informações sobre ODBC e de instantâneos*,* incluindo a biblioteca de cursores ODBC, consulte ODBC.