Partilhar via


sp_help (Transact-SQL)

Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure

Relata informações sobre um objeto de banco de dados (qualquer objeto listado no modo de exibição de sys.sysobjects compatibilidade), um tipo de dados definido pelo usuário ou um tipo de dados.

Convenções de sintaxe de Transact-SQL

Sintaxe

sp_help [ [ @objname = ] N'objname' ]
[ ; ]

Argumentos

@objname [ = ] n'objname'

O nome de qualquer objeto, ou sys.sysobjects qualquer tipo de dados definido pelo usuário na sys.systypes tabela. @objname é nvarchar(776), com um padrão de NULL. Nomes de banco de dados não são aceitáveis. Dois ou três nomes de partes podem ser delimitados, como Person.AddressType ou [Person].[AddressType].

Valores do código de retorno

0 (sucesso) ou 1 (falha).

Conjunto de resultados

Os conjuntos de resultados retornados dependem se @name é especificado, quando é especificado e qual objeto de banco de dados é.

  1. Se sp_help for executado sem argumentos, as informações resumidas de objetos de todos os tipos existentes no banco de dados atual serão retornadas.

    Nome da coluna Tipo de dados Descrição
    Name nvarchar(128) Object name
    Owner nvarchar(128) Proprietário do objeto (A entidade de segurança do banco de dados que possui o objeto. O padrão é o proprietário do esquema que contém o objeto.)
    Object_type nvarchar(31) Tipo de objeto
  2. Se @name for um tipo de dados do SQL Server ou um tipo de dados definido pelo usuário, sp_help retornará esse conjunto de resultados.

    Nome da coluna Tipo de dados Descrição
    Type_name nvarchar(128) Nome do tipo de dados.
    Storage_type nvarchar(128) Nome do tipo do SQL Server.
    Length smallint O comprimento físico do tipo de dados (em bytes).
    Prec int Precisão (número total de dígitos).
    Scale int Número de dígitos à direita da casa decimal.
    Nullable varchar(35) Indica se NULL os valores são permitidos: Yes ou No.
    Default_name nvarchar(128) Nome de uma associação padrão para esse tipo.

    NULL = Nenhum padrão está vinculado.
    Rule_name nvarchar(128) Nome de uma associação de regra para esse tipo.

    NULL = Nenhum padrão está vinculado.
    Collation sysname Ordenação do tipo de dados. NULL para tipos de dados sem caracteres.
  3. Se @name for qualquer objeto de banco de dados diferente de um tipo de dados, sp_help retornará esse conjunto de resultados e também conjuntos de resultados adicionais, com base no tipo de objeto especificado.

    Nome da coluna Tipo de dados Descrição
    Name nvarchar(128) Nome da tabela
    Owner nvarchar(128) Proprietário da tabela
    Type nvarchar(31) Tipo de tabela
    Created_datetime datetime Tabela de data criada

    Dependendo do objeto de banco de dados especificado, sp_help retorna conjuntos de resultados adicionais.

    Se @name for uma tabela do sistema, tabela de usuário ou exibição, sp_help retornará os seguintes conjuntos de resultados. No entanto, o conjunto de resultados que descreve onde o arquivo de dados está localizado em um grupo de arquivos não é retornado para uma exibição.

    • O seguinte conjunto de resultados também é retornado em objetos de coluna:

      Nome da coluna Tipo de dados Descrição
      Column_name nvarchar(128) Nome da coluna.
      Type nvarchar(128) Tipo de dados da coluna.
      Computed varchar(35) Indica se os valores na coluna são calculados: Yes ou No.
      Length int Comprimento da coluna em bytes.

      Observação: Se o tipo de dados da coluna for um tipo de valor grande (varchar(max), nvarchar(max), varbinary(max) ou xml), o valor será exibido como -1.
      Prec char(5) Precisão da coluna.
      Scale char(5) Escala de coluna.
      Nullable varchar(35) Indica se NULL os valores são permitidos na coluna: Yes ou No.
      TrimTrailingBlanks varchar(35) Exclui os espaços em branco à direita. Retorna Yes ou No.
      FixedLenNullInSource varchar(35) Esse parâmetro foi preterido e é mantido para compatibilidade com versões anteriores de scripts.
      Collation sysname Ordenação da coluna. NULL para tipos de dados sem caracteres.
    • O seguinte conjunto de resultados também é retornado em colunas de identidade:

      Nome da coluna Tipo de dados Descrição
      Identity nvarchar(128) Nome da coluna cujo tipo de dados é declarado como identidade.
      Seed numeric O valor inicial para a coluna de identidade.
      Increment numeric Incremento a ser usado para obter valores nesta coluna.
      Not For Replication int IDENTITY não é imposta quando um logon de replicação, como SQLREPL, insere dados na tabela:

      1 = True
      0 = Falso
    • O seguinte conjunto de resultados também é retornado em colunas:

      Nome da coluna Tipo de dados Descrição
      RowGuidCol sysname Nome da coluna de identificador exclusivo global.
    • O seguinte conjunto de resultados também é retornado em grupos de arquivos:

      Nome da coluna Tipo de dados Descrição
      Data_located_on_filegroup nvarchar(128) Grupo de arquivos no qual os dados estão localizados: Primary, Secondary, ou Transaction Log.
    • O seguinte conjunto de resultados também é retornado em índices:

      Nome da coluna Tipo de dados Descrição
      index_name sysname Nome do índice.
      Index_description varchar(210) Descrição do índice.
      index_keys nvarchar(2078) Nomes de coluna nas quais o índice é criado. Retorna NULL para índices columnstore com otimização de memória.
    • O seguinte conjunto de resultados também é retornado em restrições:

      Nome da coluna Tipo de dados Descrição
      constraint_type Nvarchar(146) Tipo de restrição.
      constraint_name nvarchar(128) Nome da restrição.
      delete_action nvarchar(9) Indica se a DELETE ação é uma das , NO_ACTIONCASCADE, SET_NULL, SET_DEFAULT, ou N/A.

      Aplicável somente para restrições FOREIGN KEY.
      update_action nvarchar(9) Indica se a UPDATE ação é uma das , NO_ACTIONCASCADE, SET_NULL, SET_DEFAULT, ou N/A.

      Aplicável apenas a FOREIGN KEY restrições.
      status_enabled varchar(8) Indica se a restrição está habilitada: Enabled, Disabled, ou N/A.

      Aplicável apenas a CHECK e FOREIGN KEY restrições.
      status_for_replication varchar(19) Indica se a restrição é para replicação.

      Aplicável apenas a CHECK e FOREIGN KEY restrições.
      constraint_keys nvarchar(2078) Os nomes das colunas que compõem a restrição ou, no caso de padrões e regras, do texto que define o padrão ou a regra.
    • O seguinte conjunto de resultados também é retornado ao referenciar objetos:

      Nome da coluna Tipo de dados Descrição
      Table is referenced by nvarchar(516) Identifica outros objetos de banco de dados que referenciam a tabela.
    • O conjunto de resultados a seguir também é retornado em procedimentos armazenados, funções ou procedimentos armazenados estendidos.

      Nome da coluna Tipo de dados Descrição
      Parameter_name nvarchar(128) Nome de parâmetro de procedimento armazenado.
      Type nvarchar(128) Tipo de dados do parâmetro de procedimento armazenado.
      Length smallint Comprimento máximo de armazenamento físico, em bytes.
      Prec int Precisão ou número total de dígitos.
      Scale int Número de dígitos à direita da vírgula decimal.
      Param_order smallint Ordem do parâmetro.

Comentários

O sp_help procedimento procura um objeto apenas no banco de dados atual.

Quando @name não é especificado, sp_help lista nomes de objetos, proprietários e tipos de objetos para todos os objetos no banco de dados atual. sp_helptrigger Fornece informações sobre gatilhos.

sp_help expõe apenas colunas de índice ordenáveis; portanto, ele não expõe informações sobre índices XML ou índices espaciais.

Permissões

Requer associação à função pública . O usuário deve ter pelo menos uma permissão no @objname. Para exibir chaves, padrões ou regras de restrição de coluna, você deve ter VIEW DEFINITION permissão na tabela.

Exemplos

Os exemplos de código do Transact-SQL deste artigo usa o banco de dados de exemplo AdventureWorks2022 ou AdventureWorksDW2022, que pode ser baixado da home page Microsoft SQL Server Samples and Community Projects.

R. Retornar informações sobre todos os objetos

O exemplo a seguir lista informações sobre cada objeto no banco de dados master.

USE master;
GO
EXEC sp_help;
GO

B. Retornar informações sobre um único objeto

O exemplo a seguir exibe informações sobre a tabela Person.Person.

USE AdventureWorks2022;
GO
EXEC sp_help 'Person.Person';
GO