C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Странность работы TAdoConnection
Андрей
Отправлено: 20.01.2005, 00:08


Не зарегистрирован







С помощью компонента TAdoConnection и его метода GetTableNames получаю имена таблиц, находящихся в базе.
Проблема заключается в следующем: есть база с некоторым набором таблиц. С базой идёт некоторая работа, в процессе которой некоторые таблицы удаляются, какие-то создаются и соответственно список таблиц меняется. так вот, если после изменения базы (т.е. добавления или удаления таблицы) вызвать метод GetTableNames и посмотреть этот список, то он окажется таким же, каким и был до изменения. А если этот метод вызвать через некоторое время, то он возвращает новый набор таблиц. Почему так происходит ?
Gedeon
Отправлено: 20.01.2005, 09:35


Ветеран

Группа: Модератор
Сообщений: 1742



Вы выполните Close(), Open() и все путем будет, а лучше список таблиц вообще из Query отдельным запросом получать.
Oper01
Отправлено: 20.01.2005, 18:28


Станционный диспетчер

Группа: Участник
Сообщений: 145



А как можно с помощью SQL запроса получить список таблиц ? Нужная вещь. Gedeon, подскажите.
olegenty
Отправлено: 21.01.2005, 08:03


Ветеран

Группа: Модератор
Сообщений: 2412



читай про INFORMATION_SCHEMA
full_lamer
Отправлено: 21.01.2005, 09:06


Машинист паровоза

Группа: Участник
Сообщений: 225



какая СУБД?
в зависимости от СУБД существуеют разные способы получения системной информации. ХП, запросы к специальным системным таблицам, специфические компоненты.
Gedeon*
Отправлено: 21.01.2005, 14:19


Не зарегистрирован







QUOTE (full_lamer @ 21/01/2005, 10:08)
какая СУБД?
в зависимости от СУБД существуеют разные способы получения системной информации. ХП, запросы к специальным системным таблицам, специфические компоненты.

да, совершенно правильное высказывание, думаю админу надо сверху прилепить неперемещаемую тему, в к-рой написать, чтоб указывали какая СУБД.
** Oper01
Отправлено: 21.01.2005, 23:34


Не зарегистрирован







MS Access. Как получить список тадлиц в нём ?

Вернуться в Работа с базами данных в C++Builder