Partilhar via


Criar um esquema de banco de dados

Aplica-se a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsSistema de Plataforma de Análise (PDW)Armazém no Microsoft FabricBase de dados SQL no Microsoft Fabric

Este artigo descreve como criar um esquema no SQL Server utilizando SQL Server Management Studio ou Transact-SQL.

Permissions

  • Para criar um esquema, deve ter permissão CRIAR ESQUEMA na base de dados.

  • Para especificar outro utilizador como proprietário do esquema que está a ser criado, o chamador deve ter permissão de IMPERSONAR nesse utilizador. Se um papel de base de dados for especificado como proprietário, o chamador deve cumprir um dos seguintes critérios: pertença à função ou permissão ALTER para a função.

Utilização do SQL Server Management Studio para criar um esquema

  1. No Pesquisador de Objetos, expanda a pasta Bancos de Dados.

  2. Expandir a base de dados para criar o novo esquema de base de dados.

  3. Clique com o botão direito na pasta Segurança , aponte para Novo e selecione Esquema.

  4. Na caixa de diálogo Schema - Novo , na página Geral , introduza um nome para o novo esquema na caixa de nome do Esquema .

  5. Na caixa do proprietário do Esquema , insira o nome de um utilizador ou função da base de dados que é proprietário do esquema. Em alternativa, selecione Pesquisar para abrir a caixa de diálogo Pesquisar Papéis e Utilizadores.

  6. Selecione OK.

Observação

Uma caixa de diálogo não aparecerá se estiver a criar um esquema usando SSMS contra uma base de dados Azure SQL ou Azure Synapse Analytics. Terá de executar a Instrução T-SQL Create Schema Template que é gerada.

A caixa de diálogo Schema - Nova também oferece opções em duas páginas extra: Permissões e Propriedades Estendidas.

  • A página de Permissões lista todos os possíveis securables e as permissões associadas a esses securables que podem ser atribuídas ao login.

  • A página Propriedades estendidas permite adicionar propriedades personalizadas aos utilizadores da base de dados.

Usar Transact-SQL para criar um esquema

  1. No Pesquisador de Objetos , conecte-se a uma instância do Mecanismo de Banco de Dados.

  2. Na barra Padrão, selecione Nova Consulta.

  3. O exemplo seguinte cria um esquema chamado Chains, e depois cria uma tabela chamada Sizes.

    CREATE SCHEMA Chains;
    
    GO
    
    CREATE TABLE Chains.Sizes
    (
        ChainID INT,
        width DECIMAL (10, 2)
    );
    
  4. Mais opções podem ser realizadas numa única instrução. O exemplo seguinte cria o esquema Sprockets pertencente a Joe que contém a tabela NineProngs. A declaração concede SELECTBob e nega SELECT a John.

    CREATE SCHEMA Sprockets
        AUTHORIZATION Joe;
    GO
    
    CREATE TABLE NineProngs
    (
       source INT,
       cost INT,
       partnumber INT
    );
    GO
    
    GRANT SELECT
       ON SCHEMA::Sprockets TO Bob;
    GO
    
    DENY SELECT
       ON SCHEMA::Sprockets TO John;
    GO
    
  5. Execute a seguinte instrução para visualizar os esquemas na base de dados atual:

    SELECT *
    FROM sys.schemas;
    

Limitações e restrições

  • O novo esquema pertence a uma das seguintes entidades de segurança no nível de banco de dados: usuário do banco de dados, função do banco de dados ou função do aplicativo. Objetos criados dentro de um esquema são propriedade do proprietário do esquema e têm uma NULLprincipal_id em sys.objects. A posse de objetos contidos no esquema pode ser transferida para qualquer principal ao nível da base de dados, mas o proprietário do esquema mantém sempre a permissão de CONTROL sobre os objetos dentro do esquema.

  • O principal de domínio é adicionado à base de dados como um esquema ao criar um objeto de base de dados se especificar um principal de domínio válido (utilizador ou grupo) como proprietário do objeto. O novo esquema pertence a esse principal de domínio.