Herausfinden ob ein bestimmtes Objekt in der Datenbank existiert

14. Februar 2011 – 10:48

Mit den folgenden Befehlen kann man herausfinden ob ein bestimmtes Objekt in der Datenbank existiert:

a) Tabelle

1
2
3
4
5
6
7
8
9
IF EXISTS
(
    SELECT *
    FROM Information_Schema.TABLES
    WHERE TABLE_NAME = 'TABELLE'
)
    SELECT 'Tabelle vorhanden'
ELSE
    SELECT 'Tabelle nicht gefunden'

b) Spalte

1
2
3
4
5
6
7
8
9
IF EXISTS
(
    SELECT *
    FROM Information_Schema.COLUMNS
    WHERE TABLE_NAME = 'TABELLE' AND Column_Name = 'SPALTE'
)
    SELECT 'Spalte vorhanden'
ELSE
    SELECT 'Spalte nicht gefunden'

c) Index

1
2
3
4
5
6
7
8
9
IF EXISTS
(
    SELECT *
    FROM sysindexes
    WHERE Name = 'INDEX'
)
    SELECT 'Index vorhanden'
ELSE
    SELECT 'Index nicht gefunden'
  1. Ein Kommentar to “Herausfinden ob ein bestimmtes Objekt in der Datenbank existiert”

  2. Oder einfach OBJECT_ID verwenden …

    http://msdn.microsoft.com/de-de/library/ms190328.aspx

    Von Stefan am Apr 20, 2011

Beitrag kommentieren