Возможный дубликат:
SQL Server: проверьте, существует ли таблица
Oracle: если таблица существует
Я пытаюсь создать таблицу и вставить некоторые значения, но перед этим я должен убедиться, что таблица еще не существует. Как это проверить?
Возможный дубликат:
SQL Server: проверьте, существует ли таблица
Oracle: если таблица существует
Я пытаюсь создать таблицу и вставить некоторые значения, но перед этим я должен убедиться, что таблица еще не существует. Как это проверить?
Вы можете попробовать просто ВЫБРАТЬ из него и зафиксировать ошибку, в противном случае вам нужно будет написать специальный SQL для БД, чтобы запросить соответствующие таблицы метаданных и посмотреть там.
Предполагая, что SQL Server ... Запросы к системным объектам:
select * from sysobjects where xtype='U' and name ='tablename'
sys.tables
: if exists (select * from sys.tables where Name = 'tablename') .....
- person marc_s; 19.04.2012
В MySQL вы можете использовать конструкцию CREATE TABLE IF NOT EXISTS и запускать ее перед запросом INSERT. Это создаст таблицу, если она не существует, и ничего не сделает, если таблица есть.
CREATE TABLE IF NOT EXISTS myTable (
....
)
http://dev.mysql.com/doc/refman/5.1/en/create-table.html
http://docs.oracle.com/cd/E17952_01/refman-5.1-en/create-table.html
ЕСЛИ MySQL:
select count(*) from my_tables where table_name='table_1';
If count>0 then ...
Этот простой запрос дает вам подробную информацию о конкретной таблице, созданной пользователями в Oracle. Попробуй.
select * from user_tables where table_name = 'tablename';