Я хотел бы, чтобы это было окончательным обсуждением того, как проверить, существует ли таблица в SQL Server 2000/2005 с использованием операторов SQL.
Когда вы Google для ответа, вы получите так много разных ответов. Есть ли официальный/обратный и прямой совместимый способ сделать это?
Вот два возможных способа сделать это. Какой из двух является стандартным/лучшим способом сделать это?
Первый способ:
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;
Второй способ:
IF OBJECT_ID (N'mytablename', N'U') IS NOT NULL
SELECT 1 AS res ELSE SELECT 0 AS res;
MySQL обеспечивает простой
SHOW TABLES LIKE '%tablename%';
выражение. Я ищу что-то подобное.