Uma visão geral do banco de dados e projetos de servidor

Você pode ajudar sua organização a gerenciar seu desenvolvimento de banco de dados com mais eficiência usando Visual Studio Premium para criar um o projeto de banco de dados ou um o projeto de servidor e colocar o projeto sob controle de versão. Essas representações off-line contém as definições de objeto, configurações e scripts de implantação, você poderia usar para criar uma instância separada desse banco de dados (ou servidor) ou atualizar uma instância existente.

Com base nas necessidades da sua organização, pode também compartilhar partes de projetos ou criar um projeto composto. Para obter mais informações, consulte As partes de compartilhamento de projetos mais adiante neste tópico, ou "Redigir projetos por usando referências" seção de Usar referências em projetos de banco de dados.

Tipos de projeto disponíveis

Usando Visual Studio 2010 Premium, você pode criar projetos de banco de dados, projetos de servidor, e Componente do aplicativo de camada de dados os projetos (DAC).

  • Projeto de componente do aplicativo de camada de dados
    Um DAC é um conceito novo. Ele foi introduzido com o SQL Server 2008 R2 e contém a definição de um SQL Server banco de dados e os objetos de instância de suporte que são usados por um cliente-servidor ou aplicativo de camada 3. Um DAC inclui objetos de banco de dados, como, por exemplo, tabelas e modos de exibição, juntamente com as entidades de instância, como logins. Você pode usar Visual Studio para criar um projeto DAC, criar um arquivo de pacote DAC e envie esse arquivo de pacote DAC a um administrador de banco de dados para implantação em uma instância de SQL Server mecanismo de banco de dados. Para obter uma lista dos recursos suportados por projetos DAC, consulte Suporte para recursos em aplicativos de camada de dados.

  • Projeto de banco de dados
    Um projeto de banco de dados contém as definições de todos os objetos para um banco de dados. Além disso, ele contém as configurações do banco de dados, configurações de compilação e configurações de implantação.

  • Projeto de servidor
    Um projeto de servidor contém as definições dos objetos que residem no servidor ou no banco de dados mestre no servidor. Além disso, ele contém as configurações do servidor, as configurações de compilação e configurações de implantação.

Estrutura do projeto

Solution Explorer mostra seu projeto organizado por arquivo. Cada item no Solution Explorer corresponde a uma pasta ou um arquivo salvo. Em contraste, Visualização Esquema mostra seu projeto organizado por objeto ou esquema, para que possa identificar a objetos no banco de dados se eles são definidos em arquivos separados ou não.

Um projeto de banco de dados ou o servidor pode conter os seguintes tipos de objetos:

  • Arquivos de propriedades
    Seu projeto de banco de dados ou o servidor inclui os arquivos na pasta propriedades que contêm valores de propriedade. Você pode controlar como o seu projeto é implantado, modificando a esses valores. Por exemplo, você pode especificar configurações de banco de dados, configurações do servidor, variáveis SQLCMD e permissões de banco de dados. Para obter mais informações, consulte Arquivos de propriedade no banco de dados e projetos de servidor.

  • Planos de geração de dados
    Planos de geração de dados contêm informações sobre como você deseja gerar dados de teste realistas e representante para um banco de dados que você pretende implantar ou atualizar. Para obter mais informações, consulte Geração de dados de teste para bancos de dados usando os geradores de dados.

  • Comparações de esquema
    Uma comparação do esquema contém informações sobre uma comparação específica entre o seu projeto de banco de dados e outro esquema. Você pode re-compare seu projeto esse esquema reabrir o arquivo .scmp e atualizando a comparação. Para obter mais informações, consulte Comparar e sincronizar esquemas de banco de dados.

  • Objetos de esquema
    Objetos de esquema são definidos em uma coleção de arquivos. SQL que estão armazenados na pasta do projeto. A maioria dos objetos são definidos em arquivos separados. As exceções incluem colunas em uma tabela e parâmetros para um procedimento armazenado ou função. Colunas são armazenadas na definição da tabela e os parâmetros são armazenados na definição de função ou procedimento armazenado. Para obter mais informações, consulte Criar e modificar o banco de dados e objetos de servidor.

  • Scripts
    O projeto contém scripts de pré-implantação e pós-implantação, além de para os scripts que você pode usar para gerenciar o seu banco de dados ou servidor. Para obter mais informações, consulte Criar e modificar Scripts de banco de dados.

A importação de objetos e configurações

Depois de criar um projeto, você pode importar as configurações e os objetos a partir de uma instância de banco de dados ou um script. Quando você importa um banco de dados, suas definições de objeto são validadas e instruções que não podem ser analisadas são colocadas no arquivo ScriptsIgnoredOnImport.sql. Se você importar definições de objetos que os objetos de referência deixará de existir, você deve resolver esses erros antes de construir e implantar o projeto. Por exemplo, você pode importar um procedimento armazenado que faz referência a uma tabela que não existe mais. Para resolver o erro, você pode remover esse procedimento armazenado.

Talvez você precise gastar muito tempo para a resolução de tais erros depois de importar um esquema maior. No entanto, os membros da equipe não é possível introduzir inadvertidamente erros adicionais desse tipo como atualização de esquema na Visual Studio Premium. Quando eles modificar e salvar qualquer definição de objeto, todas as alterações são validadas para que os membros da equipe podem corrigi-los imediatamente e evitar esses erros de implantação para um banco de dados ao vivo.

Depois de resolver avisos em definições de objeto, você também deve considerar a analisar seu código de banco de dados por questões de design, nomeação e desempenho. Para obter mais informações, consulte Analisando o código do banco de dados para melhorar a qualidade do código.

Compartilhando partes de projetos

Se você deseja reutilizar um conjunto de arquivos em mais de um projeto, você pode exportar qualquer parte de um projeto como um projeto parcial. Essa ação cria um arquivo de. Files, você pode incluir em um ou mais projetos. Por exemplo, você pode ter alguns procedimentos armazenados e comuns que você pode usar para fazer a auditoria de todos os bancos de dados. Definir esses procedimentos armazenados em um projeto, exportá-los e incluí-los em seus outros projetos. Usando essa abordagem, evite ter que manter o mesmo código em mais de um projeto. Para obter mais informações, consulte Como: Importar e exportar os projetos de banco de dados parciais.

Considerações sobre segurança

Seus projetos de banco de dados e quaisquer arquivos de .dbschema relacionados contêm informações sobre os ativos do banco de dados. Muito da mesma forma que seria restringir o acesso ao código-fonte, você deve restringir o acesso aos seus projetos de banco de dados e arquivos de .dbschema.

Você pode usar os seguintes métodos para controlar o acesso aos seus projetos de banco de dados e arquivos de .dbschema:

  • Use o controle de versão para seus projetos e as permissões do sistema de arquivo apropriado
    Você pode conceder acesso aos seus projetos de banco de dados para os desenvolvedores que precisam de acesso. Além disso, você pode restringir as permissões em qualquer compartilhamento de arquivo que contêm arquivos de projeto de banco de dados ou arquivos de .dbschema para impedir o acesso por pessoas não autorizadas.

  • Um projeto de banco de dados da partição usando projetos parciais
    Você pode dividir os objetos de banco de dados entre vários projetos e usar permissões de controle de versão para controlar quem podem exibir ou alterar esses projetos. Para obter mais informações, consulte Iniciando o desenvolvimento da equipe de grandes bancos de dados.

  • Criar um arquivo de .dbschema que tem o corpo do procedimento vazio
    Você pode criar uma cópia de seus procedimentos armazenados que não contêm a implementação e compartilhar o arquivo de .dbschema para aquela cópia com os desenvolvedores que deve chamar esses procedimentos, mas que não têm que ver a sua implementação. Para obter mais informações sobre como os arquivos de .dbschema de referência, consulte Usar referências em projetos de banco de dados.

Cenários relacionados

Consulte também

Tarefas

Demonstra Passo a passo: Criar e implantar um novo banco de dados com versão controlada

Demonstra Passo a passo: Colocar um esquema de banco de dados existente no controle de versão

Conceitos

Criar e implantar os bancos de dados para um ambiente de desenvolvimento isolado

Configurar projetos de banco de dados e executar uma implantação de teste

Gravar e alterar o código do banco de dados