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.
Você deve chamar essa função de membro para inicializar um objeto recentemente construído de CDaoDatabase que representa um banco de dados existente.
virtual void Open(
LPCTSTR lpszName,
BOOL bExclusive = FALSE,
BOOL bReadOnly = FALSE,
LPCTSTR lpszConnect = _T(
"" )
);
Parâmetros
lpszName
Uma expressão de cadeia de caracteres que é o nome de um arquivo de banco de dados existente do Microsoft Jet (.MDB).Se o nome do arquivo possui uma extensão, exige-se.Se sua rede oferece suporte a convenção de nomenclatura uniforme (UNC), você também pode especificar um caminho de rede, como “\\\\MYSERVER\\MYSHARE\\MYDIR\\MYDB.MDB”.(As barras invertidas duplas são necessárias em literais de cadeia de caracteres como “\” é um caractere de escape C++.)Algumas considerações se aplicam ao usar lpszName.Se ele:
Se refere a um banco de dados que já está aberto para acesso exclusivo por outro usuário MFC, gera uma exceção de tipo CDaoException.Interceptar que exceção para permitir que o usuário saiba que o banco de dados não está disponível.
É uma cadeia de caracteres vazia ("") e o lpszConnect é “; ODBC”, uma caixa de diálogo que lista todos os nomes registrados da fonte de dados ODBC é exibida para que o usuário pode selecionar um banco de dados.Você deve evitar referências diretas a fontes de dados ODBC; use uma tabela anexado em vez de isso.
Se não se refere a um banco de dados existente ou o nome válido da fonte de dados ODBC, MFC gera uma exceção do tipo CDaoException.
ObservaçãoPara obter detalhes sobre códigos de erro de DAO, consulte o arquivo de DAOERR.H.Para informações relacionadas, consulte o tópico “erros Interceptáveis de acesso a dados” na ajuda de DAO.
bExclusive
Um valor Booleano que é Verdadeiro se o banco de dados deve ser aberto para acesso exclusivo (não compartilhados) e o Falso se o banco de dados deve ser aberto para acesso compartilhado.Se você omitir o argumento, o banco de dados está aberto para acesso compartilhado.bReadOnly
Um valor Booleano que é Verdadeiro se o banco de dados deve ser aberto para acesso somente leitura e o Falso se o banco de dados deve ser aberto para acesso de leitura/gravação.Se você omitir o argumento, o banco de dados está aberto para acesso de leitura/gravação.Todos os conjuntos de registros dependentes herdam este atributo.lpszConnect
Uma expressão de cadeia de caracteres usados abrindo o banco de dados.Essa cadeia de caracteres constitui ODBC conecta argumentos.Você deve fornecer os argumentos e exclusivas somente leitura para fornecer uma cadeia de caracteres de origem.Se o banco de dados é um banco de dados Microsoft Jet (.MDB), essa cadeia de caracteres está vazia ("").A sintaxe para o valor padrão — _T("") — fornece a portabilidade para Unicode bem como compilações ANSI do seu aplicativo.
Comentários
Abrir associa o banco de dados com o objeto subjacente de DAO.Você não pode usar o objeto de banco de dados ao conjunto de registros de compilação, ao tabledef, ou objetos de querydef até que seja inicializado.Abrir anexa o objeto de banco de dados associado à coleção de bancos de dados do espaço de trabalho.
Use os parâmetros da seguinte maneira:
Se você está abrindo um banco de dados Microsoft Jet (.MDB), use o parâmetro de lpszName e passar uma cadeia de caracteres vazia para o parâmetro de lpszConnect ou passar uma cadeia de caracteres de senha do formulário “; PWD=password” se o banco de dados senha- é protegido (bancos de dados de somente .MDB).
Se você está abrindo uma fonte de dados ODBC, passe uma cadeia de conexão ODBC válida em lpszConnect e uma cadeia de caracteres vazia em lpszName.
Para informações relacionadas, consulte o tópico “método OpenDatabase” na ajuda de DAO.
Observação |
|---|
Para melhor desempenho ao acessar bancos de dados externos, incluindo bancos de dados de ISAM e fontes de dados ODBC, é recomendável que você anexe tabelas de banco de dados externos a um banco de dados do mecanismo da Microsoft Jet (.MDB) em vez de se conectar diretamente para a fonte de dados. |
É possível para uma tentativa de conexão para o tempo limite se, por exemplo, o host de DBMS não está disponível.Se a tentativa de conexão falhar, Abrir gera uma exceção do tipo CDaoException.
Os comentários restantes se aplicam somente a bancos de dados ODBC:
Se o banco de dados é um banco de dados ODBC e os parâmetros na chamada de Abrir não contêm informações suficientes para fazer a conexão, o driver ODBC abrir uma caixa de diálogo para obter as informações necessárias do usuário.Quando você chama Abrir, a cadeia de conexão, lpszConnect, é armazenada particulares e está disponível chamar a função de membro de GetConnect .
Se você desejar, você pode abrir a própria caixa de diálogo antes de chamar Abrir para obter informações do usuário, como uma senha, o que adicionar informações à cadeia de conexão que você passa a Abrir.Ou você talvez queira salvar a cadeia de conexão que você passar (talvez no Registro do Windows) para que você pode reutilizá-lo a próxima vez que seus chamadas Abrir do aplicativo em um objeto de CDaoDatabase .
Você também pode usar a cadeia de conexão para vários níveis de autorização de login (cada um para um objeto diferente de CDaoDatabase ) ou transmitir informações banco de dados específica.
Requisitos
Cabeçalho: afxdao.h