Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Есть ли возможность??? [D6, MySQL]


MaveRick ©   (2002-03-21 04:20:00) 

Есть ли возможность проверить наличие определенной таблицы в базе???
то есть... если такая таблица есть то ее нужно обнулить (должна стать пустой) если нет то создать..
Заранее благодарен
mailto:max@uuaz.ru


MaveRick   (2002-03-22 05:48:00) [1]

Всем спасибо!!!
Подошел первый вариант...


Donal_Graeme   (2002-03-21 11:28:00) [2]

в MySQL есть такая команда - SHOW TABLES - выдаёт список всех таблиц в выбранной базе


Фэ   (2002-03-21 10:02:00) [3]

Некорректно смешивать два разных подхода: файловый и серверный.
Теряется переносимость, универсальность. Да и файлы могут быть доступны только серверу СУБД, что есть правильно.


Андрей Брусов   (2002-03-21 09:31:00) [4]

Проще всего, если знаешь название таблицы и место расположение использовать FileExists("Name_Table"), примерно так

If FileExists("Name_Table") Then
begin

end;


sniknik   (2002-03-21 08:20:00) [5]

А в MySQL есть системные таблици? Насколько я знаю многие базы их создают, да что там ВСЕ базы что я знаю создают тавлицы с описанием структуры. Тут тоже должно быть чтото подобное. И тогда можно ограничится одним запросом.
Пример (Для MSSQL для MySQL работать не будет скорей всего)

IF NOT EXISTS (SELECT * FROM sysobjects WHERE (name = N"CASHAUTH"))
CREATE TABLE CASHAUTH (.....)
ELSE
DELETE FROM TABLE CASHAUTH


panov   (2002-03-21 06:44:00) [6]

Можно примерно так:

Query1.SQL.Text := "SELECT * FROM mytable";
try
Query1.Open;
Query1.Close;
Query1.SQL.Text := "DELETE FROM mytable";
Query1.ExecSql;
except
Query1.SQL.Text := "CREATE TABLE mytable ...";
Query1.ExecSql;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо