Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.11.14;
Скачать: [xml.tar.bz2];

Вниз

Проверка наличия таблицы в БД 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.042 c
3-1098106003
Елена
2004-10-18 17:26
2004.11.14
Дата в dBAse


14-1099068698
aga
2004-10-29 20:51
2004.11.14
как можно найти ключ?


3-1098117220
techgl
2004-10-18 20:33
2004.11.14
TQuery и локальные БД


1-1098981618
Misterio
2004-10-28 20:40
2004.11.14
Как уменьшить экзешник?


3-1097653399
Lex_!
2004-10-13 11:43
2004.11.14
Динамическое изменение пути к базе в БДЕ





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский