Форум: "Базы";
Текущий архив: 2005.01.16;
Скачать: [xml.tar.bz2];
ВнизДинамическое создание-подключение к таблице Найти похожие ветки
← →
vic1 (2004-12-13 09:48) [0]Использую ADO
Уважаемые Мастера, почему при динамическом создании таблицы и ее последующем открытии получаю ошибку, что объект не найден. А когда прохожусь по коду в реж отладки - все работает? Может таблица не успевает создаться и зарегистрироваться - как с этим бороться?
Спасибо.
← →
janb (2004-12-13 10:05) [1]Kak ti ee sozdaesh?
Kak otkrivaesh?
← →
vic1 (2004-12-13 11:17) [2]Данные переношу из Excel - как-то взял здесь на форуме:
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
f_name:=copy(ExtractFileName(s),1,length(ExtractFileName(s))-4);
ADOQuery1.SQL.Add("SELECT * INTO "+f_name+
" FROM [Лист1$] IN ""+s+" " "Excel 8.0;"");
ADOQuery1.ExecSQL;
Затем мне нужно получить доступ к полям, чтобы переименовать их:
ADOQ_.Close;
ADOQ_.SQL.Clear;
ADOQ_.SQL.Add("SELECT * from "+f_name);
ADOQ_.Open;
n:=ADOQ_.FieldCount;
for i:=0 to n-1 do
begin
ListBox1.Items.Add(ADOQ_.Fields[i].FieldName);
//////
ShowMessage(ADOQ_.Fields[i].FieldName);
end;
ADOQ_.Close;
При пошаговом проходе Listbox заполняется.
← →
sniknik © (2004-12-13 12:14) [3]код неполный (не все что нужно показано...) но догадатся можно (наверное ;)
решения (по догадкам)
1 поставить задержку между первым и вторым блоками кода т.е.
...
ADOQuery1.ExecSQL;
sleep(5000);
ADOQ_.Close;
...
2 пользоваться тем же компонентом
...
ADOQuery1.ExecSQL;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
...
3 настроить конект правильно (один в обоих компонентах)
← →
sniknik © (2004-12-13 12:16) [4]и кстати
> Затем мне нужно получить доступ к полям, чтобы переименовать их:
странная фраза. возможно все делается не так.
← →
vic1 (2004-12-13 12:45) [5]По умолчанию поля имеют имена f1, f2, ...
Мне в таблице нужны свои имена так как по ним идет обращение, может можно сделать это сразу при импорте как-то.
Спасибо sniknik.
← →
vic1 (2004-12-13 13:19) [6]sniknik © - а можно ли при импорте из таблицы указать в самом запросе имена полей?
← →
sniknik © (2004-12-13 18:17) [7]конечно можно в запросе делать переопределение
select f1 as f10, f2 as f20 ...
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.01.16;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.029 c