Gibt es in SQL Server 2000 eine Sysobjects-Abfrage, die Benutzeransichten und keine Systemansichten abruft?

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

  •  09-06-2019
  •  | 
  •  

Frage

Vorausgesetzt, dass es eine solche Anfrage gibt, wäre ich für Hilfe sehr dankbar.

Ich versuche, ein Berechtigungsskript zu entwickeln, das „Auswahl“- und „Referenz“-Berechtigungen für die Benutzertabellen und -ansichten in einer Datenbank gewährt.Ich hoffe, dass die Ausführung der „Grant“-Befehle für jedes Element in einem solchen Satz es einfacher macht, die Berechtigungen aktuell zu halten, wenn neue Tabellen und Ansichten zur Datenbank hinzugefügt werden.

War es hilfreich?

Lösung

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

Schließt dt_properties und Systemtabellen aus

hinzufügen

where table_type = 'view' 

wenn Sie nur die Aussicht wollen

Andere Tipps

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

Hier ist eine Liste der möglichen Werte für xtype:

  • C = CHECK-Einschränkung
  • D = Standard- oder DEFAULT-Einschränkung
  • F = FOREIGN KEY-Einschränkung
  • L = Protokoll
  • P = Gespeicherte Prozedur
  • PK = PRIMARY KEY-Einschränkung (Typ ist K)
  • RF = Gespeicherte Replikationsfilterprozedur
  • S = Systemtabelle
  • TR = Auslöser
  • U = Benutzertabelle
  • UQ = UNIQUE-Einschränkung (Typ ist K)
  • V = Ansicht
  • X = Erweiterte gespeicherte Prozedur

Hier sind die möglichen Werte für Typ:

  • C = CHECK-Einschränkung
  • D = Standard- oder DEFAULT-Einschränkung
  • F = FOREIGN KEY-Einschränkung
  • FN = Skalarfunktion
  • IF = Inline-Tabellenfunktion
  • K = PRIMARY KEY oder UNIQUE-Einschränkung
  • L = Protokoll
  • P = Gespeicherte Prozedur
  • R = Regel
  • RF = Gespeicherte Replikationsfilterprozedur
  • S = Systemtabelle
  • TF = Tabellenfunktion
  • TR = Auslöser
  • U = Benutzertabelle
  • V = Ansicht
  • X = Erweiterte gespeicherte Prozedur

Endlich, das Kategorie Das Feld sieht so aus, als würde es nach verschiedenen Objekttypen gruppieren.Nach der Analyse des zurückgegebenen Ergebnissatzes scheinen die Systemansichten eine zu haben Kategorie = 2, während alle Benutzeransichten a haben Kategorie = 0.Hoffe das hilft.

Für weitere Informationen besuchen Sie http://msdn.microsoft.com/en-us/library/aa260447(SQL.80).aspx

select * from information_schema.tables
where table_type = 'view'
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top