Partilhar via


Assistente de consumidor OLE DB da ATL

Esse assistente não está disponível no Visual Studio 2019 e versões posteriores.

Esse assistente configura uma classe de consumidor do OLE DB com as associações de dados necessárias para acessar a fonte de dados especificada por meio do provedor OLE DB especificado.

Observação

Esse assistente exige que você clique no botão Fonte de Dados para selecionar uma fonte de dados antes de inserir os nomes nos campos Class e arquivo.h.

Lista de elementos de interface do usuário

  • Fonte de dados

    O botão Fonte de Dados permite que você configure a fonte de dados especificada usando o provedor OLE DB especificado. Quando você clica nesse botão, a caixa de diálogo Propriedades do Link de Dados é exibida. Saiba mais sobre como criar cadeias de conexão e a caixa de diálogo Propriedades do Link de Dados em Visão geral da API do link de dados na documentação de SDK do Windows.

    As informações adicionais a seguir descrevem as guias na caixa de diálogo Propriedades do Link de Dados.

    • Guia Provedor

      Selecione um provedor apropriado para gerenciar a conexão com a fonte de dados. O tipo do provedor normalmente é determinado pelo tipo de banco de dados ao qual você está se conectando. Clique no botão Avançar ou clique na guia Conexão.

    • Guia Conexão

      O conteúdo dessa guia depende do provedor selecionado. Embora haja muitos tipos de provedor, esta seção aborda conexões dos dois mais comuns: dados SQL e dados ODBC. Os outros são variações semelhantes nos campos descritos aqui.

      Para dados do SQL:

      1. Selecione ou insira um nome de servidor: clique no menu da lista suspensa para exibir todos os servidores de dados registrados na rede e selecione um.

      2. Insira as informações para fazer logon no servidor: insira nome de usuário e senha para acessar o servidor de dados.

        Observação

        Há um problema de segurança com o recurso "Permitir salvamento de senha" da caixa de diálogo Propriedades do Link de Dados. Em "Digite as informações para fazer logon no servidor", há dois botões de opção:

        • Usar segurança integrada do Windows NT
        • Usar nome de usuário e senha específicos

        Selecionando Usar nome de usuário e senha específicos, você terá a opção de salvar a senha (usando a caixa de seleção "Permitir salvamento de senha"). No entanto, essa opção não é segura. É recomendável selecionar Usar segurança integrada do Windows NT. Essa opção é segura porque criptografa a senha. Pode haver situações em que seja conveniente selecionar “Permitir salvar senha”. Por exemplo, se estiver liberando uma biblioteca com uma solução de banco de dados particular, você não deverá acessar o banco de dados diretamente, mas em vez disso, usar um aplicativo de camada intermediária para verificar o usuário (por meio de qualquer esquema de autenticação escolhido) e, em seguida, limitar a classificação de dados disponível para o usuário.

      3. Selecione o banco de dados no servidor: clique no menu da lista suspensa para exibir todos os bancos de dados registrados no servidor de dados e selecione um.

        - ou -

        Anexe um arquivo de banco de dados como um nome de banco de dados: especifique um arquivo a ser usado como banco de dados; insira o nome do caminho (pathname) explícito.

      Para dados ODBC:

      1. Especifique a fonte dos dados: é possível usar um nome de fonte de dados ou uma cadeia de conexão.

        Usar nome da fonte de dados: essa lista suspensa exibe fontes de dados registrados no seu computador. Você pode configurar fontes de dados antecipadamente usando o Administrador de Fonte de Dados ODBC

        - ou -

        Usar string de conexão: insira uma string de conexão que já tenha obtido ou clique no botão Criar; a caixa de diálogo Selecionar fonte de dados é exibida. Selecione uma fonte de dados de computador ou arquivo e clique em OK.

        Observação

        Você pode obter uma cadeia de conexão ao exibir as propriedades de uma conexão existente no Gerenciador de Servidores ou criar uma conexão clicando duas vezes em Adicionar Conexão no Gerenciador de Servidores.

      2. Insira as informações para fazer logon no servidor: insira nome de usuário e senha para acessar o servidor de dados.

      3. Insira o catálogo inicial a ser usado.

      4. Clique em Testar Conexão; se o teste for bem-sucedido, clique em OK. Caso contrário, verifique suas informações de logon, tente outro banco de dados ou tente outro servidor de dados.

    • Guia Avançado

      Configurações de rede: especifique o Nível de representação (o nível de representação que o servidor tem permissão de usar na representação do cliente; corresponde diretamente aos níveis de representação do RPC) e o Nível de proteção (o nível de proteção dos dados enviados entre cliente e servidor; corresponde diretamente aos níveis de proteção do RPC).

      Outros: Em Tempo limite de conexão, especifique o número de segundos de tempo ocioso permitido antes que o tempo limite seja atingido. Em Permissões de acesso, especifique as permissões de acesso na conexão de dados.

      Saiba mais sobre propriedades de inicialização avançadas na documentação fornecida com cada provedor OLE DB específico.

    • Guia Todos

      Essa guia exibe um resumo das propriedades de inicialização para a fonte de dados e a conexão que você especificou. Você pode editar esses valores.

      Clique em OK para concluir. A caixa de diálogo Selecionar Objeto do Banco de Dados é exibida. Nessa caixa de diálogo, selecione a tabela, a exibição ou o procedimento armazenado que o consumidor usará.

  • Classe

    Depois de selecionar uma fonte de dados, essa caixa é preenchida com um nome de classe padrão com base na tabela ou no procedimento armazenado selecionado (confira Selecionar uma fonte de dados abaixo). É possível editar o nome da classe.

  • Arquivo .h

    Depois de selecionar uma fonte de dados, essa caixa é preenchida com um nome de classe de cabeçalho padrão com base na tabela ou no procedimento armazenado selecionado (confira Selecionar uma fonte de dados abaixo). Você pode editar o nome do arquivo de cabeçalho ou selecionar um arquivo de cabeçalho existente.

  • Atribuído

    Essa opção especifica se o assistente criará as classes de consumidor usando atributos ou declarações de modelo. Quando essa opção é selecionada, o assistente usa atributos em vez de declarações de modelo (essa é a opção padrão). Quando você desmarca essa opção, o assistente usa declarações de modelo em vez de atributos.

    • Se você selecionar um consumidor Tipo de Tabela, o assistente usará os atributos db_source e db_table para criar a tabela e as declarações de classe do acessador de tabela, assim como usará db_column para criar o mapa de coluna. Por exemplo, ele cria este mapa:

      // Inject table class and table accessor class declarations
      [db_source("<initialization_string>"), db_table("dbo.Orders")]
      ...
      // Column map
      [ db_column(1, status=m_dwOrderIDStatus, length=m_dwOrderIDLength) ] LONG m_OrderID;
      [ db_column(2, status=m_dwCustomerIDStatus, length=m_dwCustomerIDLength) ] TCHAR m_CustomerID[6];
      ...
      

      em vez de usar a classe de modelo CTable para declarar a tabela e a classe de acessador da tabela, e as macros BEGIN_COLUMN_MAP e END_COLUMN_MAP para criar o mapa de coluna, como neste exemplo:

      // Table accessor class
          class COrdersAccessor; // Table class
          class COrders : public CTable<CAccessor<COrdersAccessor>>;
      // ...
      // Column map
          BEGIN_COLUMN_MAP(COrderDetailsAccessor)
              COLUMN_ENTRY_LENGTH_STATUS(1, m_OrderID, m_dwOrderIDLength, m_dwOrderIDStatus)
              COLUMN_ENTRY_LENGTH_STATUS(2, m_CustomerID, m_dwCustomerIDLength, m_dwCustomerIDStatus)
              // ...
          END_COLUMN_MAP()
      
    • Se você selecionar um consumidor Tipo de Comando, o assistente usará os atributos db_source e db_command, bem como usará db_column para criar o mapa de coluna. Por exemplo, ele cria este mapa:

      [db_source("<initialization_string>"), db_command("SQL_command")]
      ...
      // Column map using db_column is the same as for consumer type of 'table'
      

      em vez de usar o comando e as declarações de classe do acessador de comando no arquivo. h da classe de comando, por exemplo:

      // Command accessor class:
          class CListOrdersAccessor;
      // Command class:
          class CListOrders : public CCommand<CAccessor<CListOrdersAccessor>>;
      // ...
      // Column map using BEGIN_COLUMN_MAP ... END_COLUMN_MAP is the same as
      // for consumer type of 'table'
      

      Confira mais informações em Mecânica básica dos atributos.

  • Tipo

    Selecione um desses botões de opção para especificar se a classe de consumidor será derivada de CTable ou CCommand (padrão).

    • Table

      Selecione essa opção se quiser usar CTable ou db_table para criar a tabela e a definição de classe do acessador de tabela.

    • Comando

      Selecione essa opção se quiser usar CCommand ou db_command para criar o comando e as declarações de classe do acessador de comando. Essa é a seleção padrão.

  • Suporte

    Marque as caixas de seleção para especificar os tipos de atualização a ser suportados no consumidor (o padrão é nenhum). Cada um definirá DBPROP_IRowsetChange e as entradas apropriadas para DBPROP_UPDATABILITY no mapa do conjunto de propriedades.

    • Altere

      Especifica que o consumidor é compatível com as atualizações dos dados da linha no conjunto de linhas.

    • Inserção

      Especifica que o consumidor é compatível com a inserção de linhas no conjunto de linhas.

    • Delete

      Especifica que o consumidor é compatível com a exclusão de linhas do conjunto de linhas.

Confira também

Consumidor OLE DB da ATL
Adicionando funcionalidade com assistentes de código
Cadeias de conexão e links de dados (OLE DB)