Überprüfen Sie, ob die Tabelle in SQL Server vorhanden ist

Ich möchte, dass dies die ultimative Diskussion darüber ist, wie mithilfe von SQL-Anweisungen überprüft wird, ob eine Tabelle in SQL Server 2000/2005 vorhanden ist.

Wenn Sie nach der Antwort googeln, erhalten Sie so viele verschiedene Antworten. Gibt es eine offizielle / vorwärts- und rückwärtskompatible Möglichkeit, dies zu tun?

Hier sind zwei Möglichkeiten, dies zu tun. Welcher von beiden ist der Standard / beste Weg, dies zu tun?

Erster Weg:

IF EXISTS (SELECT 1 
           FROM INFORMATION_SCHEMA.TABLES 
           WHERE TABLE_TYPE='BASE TABLE' 
           AND TABLE_NAME='mytablename') 
   SELECT 1 AS res ELSE SELECT 0 AS res;

Zweiter Weg:

IF OBJECT_ID (N'mytablename', N'U') IS NOT NULL 
   SELECT 1 AS res ELSE SELECT 0 AS res;

MySQL bietet die einfache

SHOW TABLES LIKE '%tablename%'; 

Aussage. Ich suche etwas ähnliches.

Antworten auf die Frage(22)

Ihre Antwort auf die Frage