none
Criar conexão no Visual Studio com banco de dados criado no SQL Server RRS feed

  • Pergunta

  • Pessoal, estou tendo uma dificuldade no que tange ao acesso, pelo Visual Studio 2019, ao banco de dados do SQL Server Express Northwnd.mdf e Estoque.mdf.

    Consegui executar o script do banco de dados Northwind, o qual foi devidamente criado na instância SQLEXPRESS.

    No entanto, ao tentar criar uma conexão com o banco de dados no Visual Studio aparece a mensagem:

    <TÍTULO>Selecionar arquivo do Banco de Dados do SQL Server
    Northwnd.mdf
    Você não tem permissão para abrir o arquivo.
    Entre em contato com o proprietário do arquivo ou com o administrador para obter permissão.

    A mesma mensagem aparece quando tento criar conexão com o banco de dados Estoque.mdf, que eu criei no SSMS.

    A mensagem aparece quando tento Adicionar uma Nova Fonte de Dados. É aberto o Assistente de Configuração de Fonte de Dados, seleciono Banco de Dados, depois Conjunto de Dados, depois Nova Conexão. Escolho como Fonte de Dados o Arquivo de Banco de Dados do Microsoft SQL Server. Após escolher a pasta na qual está localizado o banco de dados e selecionar o banco de dados e clicar em Abrir, aparece a mensagem acima.

    Ou seja, qualquer que seja o banco de dados que tenho disponível na instância SQLEXPRESS, este não é acessível no Visual Studio (sequer consigo selecioná-lo para criar uma conexão com o banco de dados).

    No SQL Server Object Explorer (aba do Visual Studio 2019), em SQL Server, consigo visualizar, na instância respectiva do SQL Server, pasta Databases, os bancos de dados Northwind e Estoque. Se eu clicar com o botão direito do mouse sobre o banco de dados, aparece um menu com a opção, dentre outras, View Permissions.

    Ao selecionar esta opção, aparecem as permissões do banco de dados. No caso do banco de dados Estoque, as permissões existentes são:

    GRANT CONNECT TO [RFR];
    GO
    GRANT VIEW ANY COLUMN MASTER KEY DEFINITION TO PUBLIC;
    GO
    GRANT VIEW ANY COLUMN ENCRYPTION KEY DEFINITION TO PUBLIC;

    [RFR] foi um usuário do SQL SERVER que criei no SSMS, ao qual concedi a permissão CONNECT para este banco de dados. Mudei a primeira GRANT para CONNECT TO PUBLIC, mas não resolveu o problema.

    Provavelmente, para poder selecionar o banco de dados do SQL Server no Visual Studio, seja necessário dar uma permissão (GRANT) para o perfil PUBLIC ou para o usuário que acessa a instância do Visual Studio 2019.

    Se tiverem alguma sugestão para solucionar esta questão, desde já agradeço.

    Ricardo
    quinta-feira, 18 de julho de 2019 20:33