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

Что можно сделать с зарезервированным словом в запросе?   Найти похожие ветки 

← →
DimonS ©   (2005-09-06 02:29) [0]

У меня в БД есть два поля - In и Date. при попытке выполнить команду:

...
Query1.SQL.Add("where In="+MaskEdit1.Text);
Query1.Open;

Выдается ошибка:
Invalid use in keyword. Token In=...

Тоже самое и с Date. Как тут быть? с TTable таких вопросов не возникало, а в справке что-то не нашел. Переименовать поле довольно проблематично будет.


← →
DimonS ©   (2005-09-06 04:33) [1]

И еще вопрос такого плана. Как соединить 2 таблицы один-ко-многим так, чтобы их можно было отображать в разных гридах в связанном виде? В TTable используется MasterSource, а в запросах как? В один то грид соединить их не проблема.


← →
Ильш ©   (2005-09-06 06:19) [2]


> Переименовать поле довольно проблематично будет

ПЕРЕИМЕНОВАТЬ АДНАЗНАЧНА !!!
И ЧТО ЗА ПРИВЫЧКА ЗА ТАКАЯ ИСПОЛЬЗОВАТЬ ЗАРЕЗЕРВИРОВАННЫЕ СЛОВА ???


← →
DimonS ©   (2005-09-06 06:45) [3]

Было бы просто, вопросов бы небыло. По ним вся программа настроена. Переписывать очень много.


← →
Ильш ©   (2005-09-06 07:30) [4]

дык нельзя не переименовывать


← →
dmitry501 ©   (2005-09-06 07:34) [5]

Не уверен для dBase, FoxPro, Paradox, но возможно поможет заключение таких полей в квадратные скобки []


← →
DimonS ©   (2005-09-06 07:39) [6]

to dmitry501
Конечно, пробовал. Ладно, похоже придется все-таки переименовывать.


← →
Ильш ©   (2005-09-06 07:44) [7]


> Как соединить 2 таблицы один-ко-многим так, чтобы их можно
> было отображать в разных гридах в связанном виде?

а какие компоненты используешь? стандартные?
тогда делай второй запрос параметризированным и переоткрывай его при перемещении по первому


← →
Anatoly Podgoretsky ©   (2005-09-06 07:47) [8]

DimonS ©   (06.09.05 06:45) [3]
Ну как хочешь, будешь всю жизнь мучатся.


← →
DimonS ©   (2005-09-06 08:15) [9]

To Ильш

Да, стандартные, Query. Смысл понял, спасибо. А тормозить сильно будет? И есть ли другой способ еще?


← →
Ильш ©   (2005-09-06 08:32) [10]

тормозить не должно
все ж зависит от кол-ва записей, наличия индексов, причем правильно построенных


← →
Zacho ©   (2005-09-06 08:45) [11]

DimonS ©   (06.09.05 8:15) [9]

Ничего не надо самому переоткрывать. Всё гораздо проще.

См. в хелпе TQuery.DataSource Там и пример есть.
Так же посмотри раздел Establishing master/detail relationships using parameters


← →
Zacho ©   (2005-09-06 08:49) [12]

DimonS ©   (06.09.05 8:15) [9]

Кстати, есть и другой способ. Использовать фильтрацию в detail-датасете.
Соответственно, менять условие фильтра надо в AfterScroll master-датасета.


← →
DimonS ©   (2005-09-06 08:52) [13]

Zacho

Спасибо, я себе в общем то так и представлял это, но все же что лучше, параматеризированный запрос или фильтрация? БД небольшие, 3-4 тыс. записей. В смысле лучше в связи с целостностью данных?


← →
Zacho ©   (2005-09-06 09:00) [14]

DimonS ©   (06.09.05 8:52) [13]
В смысле лучше в связи с целостностью данных?


Без разницы. Выборка не имеет никакого отношение к поддержке ссылочной целостности.

А что лучше по быстродействию/объёму памяти - зависит от задачи, так что сам смотри.


← →
Desdechado ©   (2005-09-06 11:20) [15]

попробуй указывать алиасы таблиц, например
SELECT T.* FROM Tablica T
WHERE T."IN"=1 AND T."DATE">"12.12.2003"


← →
alex_***   (2005-09-06 15:36) [16]

или в квадратных скобках -> [IN]



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

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



Память: 0.48 MB
Время: 0.027 c
2-1127235261
RDS
2005-09-20 20:54
2005.10.16
вопрос по FindFirst, FindNext & FindClose


1-1127739413
MakedoneZ
2005-09-26 16:56
2005.10.16
Работа с реестром,запуск проги при старте OC


2-1126083198
dreamse
2005-09-07 12:53
2005.10.16
Перевод данных в формат Даты


14-1127815639
wicked
2005-09-27 14:07
2005.10.16
Happy 7th Birthday Google....


3-1125630197
skiph
2005-09-02 07:03
2005.10.16
2 Query на одну таблицу




   Наверх