No SQL Server 2000, existe uma consulta sysobjects que recuperará visualizações do usuário e não visualizações do sistema?

StackOverflow https://stackoverflow.com/questions/33226

  •  09-06-2019
  •  | 
  •  

Pergunta

Supondo que tal consulta exista, eu apreciaria muito a ajuda.

Estou tentando desenvolver um script de permissões que concederá permissões de "seleção" e "referências" nas tabelas e visualizações do usuário em um banco de dados.Minha esperança é que a execução dos comandos "grant" em cada elemento desse conjunto facilite a manutenção das permissões atualizadas quando novas tabelas e visualizações forem adicionadas ao banco de dados.

Foi útil?

Solução

select * from information_schema.tables
WHERE OBJECTPROPERTY(OBJECT_ID(table_name),'IsMSShipped') =0 

Excluirá dt_properties e tabelas de sistema

adicionar

where table_type = 'view' 

se você quer apenas a vista

Outras dicas

SELECT
    *
FROM
    sysobjects
WHERE
    xtype = 'V' AND
    type = 'V' AND
    category = 0

Aqui está uma lista dos valores possíveis para tipo x:

  • C = restrição CHECK
  • D = restrição padrão ou DEFAULT
  • F = restrição FOREIGN KEY
  • L = Registro
  • P = procedimento armazenado
  • PK = restrição PRIMARY KEY (o tipo é K)
  • RF = procedimento armazenado do filtro de replicação
  • S = tabela do sistema
  • TR = Gatilho
  • U = tabela de usuários
  • UQ = restrição UNIQUE (o tipo é K)
  • V = Visualizar
  • X = procedimento armazenado estendido

Aqui estão os valores possíveis para tipo:

  • C = restrição CHECK
  • D = restrição padrão ou DEFAULT
  • F = restrição FOREIGN KEY
  • FN = função escalar
  • IF = função de tabela embutida
  • K = PRIMARY KEY ou restrição UNIQUE
  • L = Registro
  • P = procedimento armazenado
  • R = Regra
  • RF = procedimento armazenado do filtro de replicação
  • S = tabela do sistema
  • TF = Função de tabela
  • TR = Gatilho
  • U = tabela de usuários
  • V = Visualizar
  • X = procedimento armazenado estendido

finalmente, o categoria campo parece agrupar com base em diferentes tipos de objetos.Depois de analisar o conjunto de resultados retornado, as visualizações do sistema parecem ter uma categoria = 2, enquanto todas as visualizações do usuário têm um categoria = 0.Espero que isto ajude.

Para mais informações visite http://msdn.microsoft.com/en-us/library/aa260447(SQL.80).aspx

select * from information_schema.tables
where table_type = 'view'
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top