Dans SQL Server 2000, existe-t-il une requête sysobjects qui récupérera les vues utilisateur et non les vues système ?

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

  •  09-06-2019
  •  | 
  •  

Question

En supposant qu'une telle requête existe, j'apprécierais grandement votre aide.

J'essaie de développer un script d'autorisations qui accordera les autorisations "sélectionner" et "références" sur les tables et vues utilisateur d'une base de données.J'espère que l'exécution des commandes "grant" sur chaque élément d'un tel ensemble facilitera le maintien des autorisations à jour lorsque de nouvelles tables et vues sont ajoutées à la base de données.

Était-ce utile?

La solution

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

Exclura dt_properties et les tables système

ajouter

where table_type = 'view' 

si tu veux juste la vue

Autres conseils

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

Voici une liste des valeurs possibles pour xtype:

  • C = contrainte CHECK
  • D = Contrainte par défaut ou DEFAULT
  • F = contrainte FOREIGN KEY
  • L = Journal
  • P = Procédure stockée
  • PK = contrainte PRIMARY KEY (le type est K)
  • RF = procédure stockée de filtre de réplication
  • S = Tableau système
  • TR = Déclencheur
  • U = Table utilisateur
  • UQ = contrainte UNIQUE (le type est K)
  • V = Vue
  • X = procédure stockée étendue

Voici les valeurs possibles pour taper:

  • C = contrainte CHECK
  • D = Contrainte par défaut ou DEFAULT
  • F = contrainte FOREIGN KEY
  • FN = Fonction scalaire
  • IF = fonction de table en ligne
  • K = PRIMARY KEY ou contrainte UNIQUE
  • L = Journal
  • P = Procédure stockée
  • R = Règle
  • RF = procédure stockée de filtre de réplication
  • S = Tableau système
  • TF = Fonction de table
  • TR = Déclencheur
  • U = Table utilisateur
  • V = Vue
  • X = procédure stockée étendue

Finalement, le catégorie Le champ semble être regroupé en fonction de différents types d'objets.Après avoir analysé l'ensemble de résultats renvoyé, les vues système semblent avoir un catégorie = 2, alors que toutes les vues utilisateur ont un catégorie = 0.J'espère que cela t'aides.

Pour plus d'informations, visitez http://msdn.microsoft.com/en-us/library/aa260447(SQL.80).aspx

select * from information_schema.tables
where table_type = 'view'
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top