Partilhar via


CDaoDatabase::em aberto

Você deve chamar essa função de membro para inicializar um recém-criada CDaoDatabase objeto 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 em seqüência que é o nome de um arquivo de banco de dados Microsoft Jet (.mdb) existente.Se o nome do arquivo tem uma extensão, será necessário.Se sua rede oferecer suporte uniforme) UNC (convenção de nomes, você também pode especificar um caminho de rede, sistema autônomo "\\\\MYSERVER\\MYSHARE\\MYDIR\\MYDB.MDB".(Barras invertidas duplas são necessárias em literais de seqüência de caracteres como "\" é o caractere de escape do C++.)

    Algumas considerações se aplicam ao usar lpszName. Se ele:

    • Se refere a um banco de dados que já está em aberto para acesso exclusivo por outro usuário, MFC lança uma exceção do tipo CDaoException.Interceptar essa exceção para permitir que o usuário saber que o banco de dados está não disponível.

    • É uma seqüência de caracteres vazia ("") elpszConnect é "ODBC;", é exibida uma caixa de diálogo listando registrados todos os nomes de fonte de dados ODBC para que o usuário pode selecionar um banco de dados.Você deve evitar conexões diretas com fontes de dados ODBC; use uma tabela anexada.

    • Caso contrário, não faz referência a um banco de dados existente ou nome da fonte de dados ODBC válida, MFC lança uma exceção do tipo CDaoException.

    Observação:

    Para obter detalhes sobre os códigos de erro do DAO, consulte o arquivo DAOERR.H.Para obter informações relacionadas, consulte o tópico "Trappable dados acesso erros" na Ajuda do DAO.

  • bExclusive
    Valor de um valor booliano que é TRUE se o banco de dados para ser aberta para acesso exclusivo (compartilhado) e FALSE se o banco de dados a ser aberto para acesso compartilhado.Se você omitir esse argumento, o banco de dados é aberto para acesso compartilhado.

  • bReadOnly
    Valor de um valor booliano que é TRUE se o banco de dados a ser aberto para acesso somente leitura e FALSE se o banco de dados para ser aberta para acesso de leitura/gravar.Se você omitir esse argumento, o banco de dados é aberto para acesso de leitura/gravar.Todos os conjuntos de registros dependentes herdam esse atributo.

  • lpszConnect
    Uma expressão de cadeia de caracteres de caracteres usada para abrir o banco de dados.Essa seqüência de caracteres constitui o ODBC para conectar-se de argumentos.Você deve fornecer argumentos exclusivo e somente leitura para fornecer uma seqüência de caracteres de fonte.Se o banco de dados é um banco de dados Microsoft Jet (.mdb), essa seqüência de caracteres está vazia ("").A sintaxe para o valor padrão — _T("") — oferece portabilidade para Unicode, bem sistema autônomo ANSI compilações do seu aplicativo.

Comentários

em aberto associa o banco de dados subjacente objeto DAO.Você não pode usar o objeto de banco de dados para construir o conjunto de registros, definiçãodetabela ou definiçãodeconsulta objetos até que ele seja inicializado.em aberto acrescenta o objeto de banco de dados à coleção de bancos de dados do espaço de trabalho associado.

Use sistema autônomo parâmetros da seguinte maneira:

  • Se você estiver abrindo um banco de dados Microsoft Jet (.mdb), use o lpszName parâmetro e passar um vazio de seqüências para o lpszConnectparâmetro ou passar uma seqüência de caracteres de senha do formulário "; PWD = senha" se o banco de dados for protegido por senha (.mdb somente bancos de dados).

  • Se você está abrindo uma fonte de dados ODBC, passe uma cadeia de conexão ODBC válida em lpszConnect e uma seqüência de caracteres vazia no lpszName.

Para obter informações relacionadas, consulte o tópico "Método OpenDatabase" na Ajuda do DAO.

Observação:

Para obter um melhor desempenho ao acessar bancos de dados externos, incluindo bancos de dados ISAM e fontes de dados ODBC, é recomendável que você anexar tabelas de bancos de dados externos a um banco de dados de mecanismo Microsoft Jet (.Mdb) em vez de se conectar diretamente à fonte de dados.

É possível que uma tentativa de conexão para o time limite, por exemplo, se o DBMS host não disponível.Se a tentativa de conexão falhar, em aberto lança uma exceção do tipo CDaoException.

Os comentários restantes se aplicam apenas a bancos de dados ODBC:

Se o banco de dados for um banco de dados ODBC e os parâmetros no seu em aberto telefonar não contêm informações suficientes para fazer a conexão, o driver ODBC abre uma caixa de diálogo para obter as informações necessárias do usuário.Quando você telefonar em aberto, sua seqüência de caracteres de conexão, lpszConnect, é armazenado em particular e está disponível por telefonar ing o GetConnectfunção de membro .

Se desejar, você poderá em aberto sua própria caixa de diálogo antes de você telefonar em aberto para obter informações do usuário, sistema autônomo uma senha, em seguida, adicionar essas informações à cadeia de conexão que você passar para em aberto.Ou talvez você queira salvar a cadeia de conexão que você passar (talvez no registro do Windows) para que você pode reutilizá-la na próxima vez em que o aplicativo chama em aberto on a CDaoDatabase objeto.

Você também pode usar a seqüência de caracteres de conexão de vários níveis de autorização de login (cada um diferentes CDaoDatabase objeto) ou para transmitir outras informações específicas do banco de dados.

Requisitos

Cabeçalho: afxdao.h

Consulte também

Referência

Classe CDaoDatabase

Gráfico de hierarquia

CDatabase::CDatabase

CDatabase::fechar

Outros recursos

CDaoDatabase membros