Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.14;
Скачать: CL | DM;

Вниз

Проверка наличия таблицы в БД Access через ADOConnection   Найти похожие ветки 

 
diabolik_krsk   (2004-10-14 14:59) [0]

Уважаемые мастера, помогите решить проблему.
Подключаю базу данных Access через ADOConnection в ходе прогона программы.

procedure TMain.ADOConnection(Sender: TObject);
begin
 ADOC:=TADOConnection.Create(main);
 ADOC.Provider:="Microsoft.Jet.OLEDB.4.0";
 ADOC.Mode:=cmShareDenyNone;
 ADOC.ConnectionString:="Data Source="+ExtractFilePath(ParamStr(0))+";Persist Security Info=False";
 ADOC.LoginPrompt:=false;
 ADOC.Name:="Connection"+IntToStr(K);
 ADOC.Connected:=true;
end;

В базе данных несколько таблиц.
Подскажите как проверить существует ли в этой базе данных таблица с определенным именем, например таблица Maintable.


 
Vlad ©   (2004-10-14 15:03) [1]

TADOConnection.GetTableNames ?


 
diabolik_krsk   (2004-10-14 15:20) [2]


> Vlad ©   (14.10.04 15:03) [1]
> TADOConnection.GetTableNames ?

Не совсем. Пробовал - по F1 оказывается что процедура предназначена для извлечения записей из БД и помещения названий таблиц в TList. У меня в программе TList нет и, в принципе, он мне не нужен.

Немного уточню вопрос. Необходимо узнать находится ли в БД таблица с определенным именем, и если она существует создать для нее TADOTable/


 
ping   (2004-10-16 12:38) [3]

по простецки попробуй - через try.. except делай то что нужно, ну а если не получится, значит не судьба - нет такой таблицы. Хотя 100% нет гарантии...
Еще путь : в Аксесе есть системная таблица, где описаны объекты БД. Поищи ее описание, и из нее по имени и типу объета(таблица) селекти строку, если есть то это она, если нет - опять не судьба...


 
sniknik ©   (2004-10-16 13:21) [4]

подумай еще раз про GetTableNames, и кстати как это не нужно TList  если нужная процедура параметы через нее передает?
хочеш см. OpenSchema (которую первая и вызывает) там в рекордсете возвращается.
через системную не советую может прав на чтение не хватить, и т.д. а итог те же данные. (без проблем в общемто, но знать надо побольше чем с GetTableNames, если хочеш чтобы нормально работало)



Страницы: 1 вся ветка

Текущий архив: 2004.11.14;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.059 c
14-1099002605
GanibalLector
2004-10-29 02:30
2004.11.14
Двенадцать заповедей пролетариата


9-1089915239
Колбасьев
2004-07-15 22:13
2004.11.14
Подскажите как масштабировать модель (имеется ввиду X Mesh).


1-1099377678
Gawk
2004-11-02 09:41
2004.11.14
Выполнение действия через определённые промежутки времени...


3-1097758302
Andrey_
2004-10-14 16:51
2004.11.14
Помещение картинки (bmp) в БД


3-1097629887
dark
2004-10-13 05:11
2004.11.14
Как включить поддержку кодировки в таблицу формата *.dbf (dBASE)