Вниз
Скачать: CL | DM;

TQuery в Runtime   Найти похожие ветки 

 
dymka   (2002-01-09 14:01) [0]

Вопрос такой... на форму кидаю TQuery и записываю туда такой запрос
select * from ":alias:table"
делаю в инспекторе Active := True, выходит окошко с паролем - вводишь его и все ОК. Запрос открыт. Теперь все тоже в Runtime:

var
FQuery: TQuery;
begin
FQuery := TQuery.Create(Self);
FQuery.SQL.Text := "select * from ":alias:table"";
FQuery.Open;

вот тут и выдается ошибка - No such table or correlation name.
Типа нет такой таблицы. Почему такое возникает и как с этим бороться? Мне нужно работать с разными алиасами, поэтому указание FQuery.DatabaseName неприемлемо.
Заранее благодарен, Дмитрий Плясунов.


 
Delirium ©   (2002-01-09 14:15) [1]

ДУМАЙ! Что ты написал!
Раз обозначил параметры - им надо задать значения!
Но в товоём случае лучше присать "руками":

Al:="c:\tmp\";
Tbl:="my_table.dbf";
FQuery.SQL.Text := "select * from ""+Al+Tbl+""";


 
dymka   (2002-01-09 14:28) [2]

Это не параметры а способ доступа к базе данных без указания свойства DatabaseName (для создания гетерогенных запросов (т.е. один запрос из разных баз)).
Допустим мне нужно сделать запрос из разных баз данных - так вот
BDE такую фишку поддерживает в виде указания имени таблицы в виде
":ALIASBDE:TABLENAME", но... почему то не правильно работает.


 
Delirium ©   (2002-01-09 15:02) [3]

Ааа, понял, извини что погорячился. Но тем не менее, у меня приведённый ниже пример работает без проблем.

select * from ":dbdemos:animals",":DefaultDD:bdesdd"


 
dymka   (2002-01-09 15:14) [4]

У меня тоже везде работает кроме приведенного выше примера...
Т.е. когда создаю объект в рунтайме кричит что нет такой таблицы... не понимаю почему...


 
Romkin ©   (2002-01-09 15:21) [5]

И не поймет - это interbase, твой запрос передается серверу, и, понятно, алиасы допускать нельзя.


 
Delirium ©   (2002-01-09 15:24) [6]

У меня работает и в Runtime


 
Romkin ©   (2002-01-09 15:29) [7]

2Delirium
У тебя парадокс, по крайней мере, как основной алиас - все запросы выполняются на клиенте


 
dymka   (2002-01-09 15:32) [8]

Romkin, я юзаю BDE для доступа к IB. В DesignTime же все работает прекрасно!
Delirium, какая версия Дельфи? Не работает у меня и все тут :(
Сам использую 6. Или глюк BDE?


 
dymka   (2002-01-09 15:33) [9]

Далее, работает и если TQuery создать в режиме DesignTime, а все заполнить в Runtime! Не работает именно в когда сам компонент создаешь в рунтайме!


 
Delirium ©   (2002-01-09 16:01) [10]

У меня то-же D6, но я не работаю с IB - экспериментирую со стандартными базами



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.009 c
7-18996
T2
2001-10-29 17:04
2002.02.07
Эквалайзер


14-18976
SD Alone
2001-12-14 11:10
2002.02.07
Где-то видел прогу которая уменьшает размер готового exe-шника написанного на Delphi чуть ли не на половину


14-18969
Axel
2001-12-18 12:51
2002.02.07
May sombody help with Active Directory cleaning (W2KSrv)?


1-18804
zool
2002-01-24 20:27
2002.02.07
Компоненты


1-18869
Ramid
2002-01-21 17:10
2002.02.07
Какое событие проиходит когда кликаешь (передвигаешь) ScrollBar на TStringGrid?




   Наверх