Главная страница
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.044 c
1-1099288052
Роман
2004-11-01 08:47
2004.11.14
Сохранение данных


1-1098879629
klerk
2004-10-27 16:20
2004.11.14
Combobox.Droppedown


14-1098561157
snif
2004-10-23 23:52
2004.11.14
Удаленный рабочий стол


1-1098600940
makey
2004-10-24 10:55
2004.11.14
Иконка в понели задач


4-1097041381
Суслик
2004-10-06 09:43
2004.11.14
Шрифт