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.
Observação
O assistente MFC ODBC Consumer não está disponível no Visual Studio 2019 e em versões posteriores. Você ainda pode criar um consumidor manualmente.
Este tópico se aplica às classes ODBC do MFC.
Para usar um conjunto de registros, construa um objeto de conjunto de registros e chame sua Open função de membro para executar a consulta do conjunto de registros e selecionar registros. Quando terminar com o conjunto de registros, feche e destrua o objeto.
Este tópico explica:
Criando conjuntos de registros em tempo de execução
Antes de criar objetos de conjunto de registros em seu programa, você normalmente escreve classes de conjunto de registros específicas do aplicativo. Para obter mais informações sobre esta etapa preliminar, consulte Como adicionar um consumidor MFC ODBC.
Abra um objeto dynaset ou snapshot quando precisar selecionar registros de uma fonte de dados. O tipo de objeto a ser criado depende do que você precisa fazer com os dados em seu aplicativo e do que seu driver ODBC suporta. Para obter mais informações, consulte Dynaset e instantâneo.
Para abrir um conjunto de registros
Construa um objeto da sua
CRecordsetclasse derivada.Você pode construir o objeto na heap ou no frame de stack de uma função.
Opcionalmente, modifique o comportamento padrão do conjunto de registros. Para obter as opções disponíveis, consulte Definindo opções de conjunto de registros.
Chame a função membro Abrir do objeto.
No construtor, passe um ponteiro para um objeto CDatabase ou passe NULL para usar um objeto de banco de dados temporário que o framework constrói e abre com base na string de conexão retornada pela função membro GetDefaultConnect. O CDatabase objeto pode já estar conectado a uma fonte de dados.
A chamada para Open usa SQL para selecionar registros da fonte de dados. O primeiro registro selecionado (se houver) é o registro atual. Os valores dos campos desse registro são armazenados nos membros de dados de campo do objeto do conjunto de registros. Se alguns registos tiverem sido selecionados, tanto a função IsBOF como a função IsEOF retornam 0.
Na sua chamada Open, pode:
Especifique se o conjunto de registros é um dynaset ou snapshot. Os conjuntos de registros são abertos como instantâneos por padrão. Ou, você pode especificar um conjunto de registros somente para frente, que permite apenas rolagem para frente, um registro de cada vez.
Por padrão, um conjunto de dados usa o tipo padrão armazenado no
CRecordsetmembro de dadosm_nDefaultType. Os assistentes gravam código para inicializarm_nDefaultTypeno tipo de conjunto de registros escolhido no assistente. Em vez de aceitar esse padrão, você pode substituir outro tipo de conjunto de registros.Especifique uma cadeia de caracteres para substituir a instrução SQL SELECT padrão que o conjunto de registros constrói.
Especifique se o conjunto de registros é apenas para leitura ou somente para acrescentar. Os conjuntos de registros permitem a atualização completa por padrão, mas você pode limitar isso a adicionar apenas novos registros ou pode não permitir todas as atualizações.
O exemplo a seguir mostra como abrir um objeto instantâneo somente leitura da classe CStudentSet, uma classe específica do aplicativo:
// Construct the snapshot object
CStudentSet rsStudent( NULL );
// Set options if desired, then open the recordset
if(!rsStudent.Open(CRecordset::snapshot, NULL, CRecordset::readOnly))
return FALSE;
// Use the snapshot to operate on its records...
Depois de chamar o Open, use as funções de membro e as variáveis de membro do objeto para trabalhar com os registos. Em alguns casos, convém consultar novamente ou atualizar o conjunto de registros para incluir alterações que ocorreram na fonte de dados. Para obter mais informações, consulte Recordset: Requerying a Recordset (ODBC).
Sugestão
A cadeia de conexão que você usa durante o desenvolvimento pode não ser a mesma cadeia de conexão de que seus eventuais usuários precisam. Para obter ideias sobre como generalizar seu aplicativo a esse respeito, consulte Fonte de dados: gerenciando conexões (ODBC).
Definindo opções de conjunto de registros
Depois de construir o objeto do conjunto de registros, mas antes de chamar Open para selecionar registros, convém definir algumas opções para controlar o comportamento do conjunto de registros. Para todos os conjuntos de registros, você pode:
Especifique um filtro para restringir a seleção de registros.
Especifique uma ordem de classificação para os registros.
Especifique parâmetros para que você possa selecionar registros usando informações obtidas ou calculadas em tempo de execução.
Você também pode definir a seguinte opção se as condições estiverem corretas:
- Se o conjunto de registros for atualizável e oferecer suporte a opções de bloqueio, especifique o método de bloqueio usado para atualizações.
Observação
Para afetar a seleção de registros, você deve definir essas opções antes de chamar a Open função de membro.
Fechando um conjunto de registros
Quando terminar com o conjunto de registros, você deve descartá-lo e desalocar sua memória.
Para fechar um conjunto de registros
Chame sua função de membro Fechar .
Destrua o objeto do conjunto de registros.
Se você o declarou no quadro de pilha de uma função, o objeto será destruído automaticamente quando o objeto sair do escopo. Caso contrário, use o
deleteoperador.
Close libera o identificador do conjunto de HSTMT registros. Ele não destrói o objeto C++.
Ver também
Conjunto de registros (ODBC)
Conjunto de registros: rolagem (ODBC)
Conjunto de registros: Adicionando, atualizando e excluindo registros (ODBC)