![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите выполнить Refresh
sdram © (2002-10-02 16:22:00)Ругается "Недостаточно сведений ключевого поля для обновления" но если перечитать Close Open все нормально. О каком ключевом поле идет речь?
sdram (2002-10-02 17:44:00) [1]Я понял что ты имел ввиду счас исправлю. Спасибо.
sdram (2002-10-02 17:38:00) [2]Запрос выглядит так
SELECT t_name.name, t_name.code, t_name_c.id , t_above.name, t_above.code , t_arch.name, t_arch.code , t_glass.name, t_glass.code , t_part.name, t_part.code , t_perf.name, t_perf.code , t_seal.name, t_seal.code , t_thr.name, t_thr.code , t_open.name, t_open.code , t_Internal.name, t_Internal.code FROM t_name, t_name_c , t_above , t_above_c , t_arch , t_arch_c , t_glass , t_glass_c , t_part , t_part_c , t_perf , t_perf_c , t_seal , t_seal_c , t_thr , t_thr_c , t_open , t_open_c , t_Internal , t_Internal_c WHERE t_name_c.code=t_name.code AND t_name_c.code=7 AND t_above_c.id=t_name_c.id AND t_above.code=t_above_c.code AND t_arch_c.id=t_name_c.id AND t_arch.code=t_arch_c.code AND t_glass_c.id=t_name_c.id AND t_glass.code=t_glass_c.code AND t_part_c.id=t_name_c.id AND t_part.code=t_part_c.code AND t_perf_c.id=t_name_c.id AND t_perf.code=t_perf_c.code AND t_seal_c.id=t_name_c.id AND t_seal.code=t_seal_c.code AND t_thr_c.id=t_name_c.id AND t_thr.code=t_thr_c.code AND t_open_c.id=t_name_c.id AND t_open.code=t_open_c.code AND t_Internal_c.id=t_name_c.id AND t_Internal.code=t_Internal_c.code
У таблиц вида t_name поля (name, code)
t_name_c (id, code)
Prooksius (2002-10-02 17:27:00) [3]2 sdram © (02.10.02 17:20)
Дай скрипт таблиц запроса и сам запрос
sdram (2002-10-02 17:20:00) [4]
> Prooksius ©
> компоненты ключа
если не трудно подробней про компоненты
Prooksius (2002-10-02 17:07:00) [5]Значит, не все компоненты ключа доступны в ДатаСете.
sdram (2002-10-02 16:38:00) [6]Его я и пытаюсь Refresh -ить
sdram (2002-10-02 16:35:00) [7]У меня TADODataSest на основании запроса там по ключевому полю связанны 15 таблиц.
Prooksius (2002-10-02 16:28:00) [8]Насколько я понял, ты пытаешься перечитать текущую строчку в грид (или еще куде-то). У таблицы обычно должно быть Primary Key, первичный ключ, однозначно идентифицирующий запись в таблице. Так вот этот самый ключ и недоступен.
А может, его у тебя нет?
При Close Open происходит refresh всего датасета. Поэтому работает.
И вообще, на чем ты работаешь, какая база данных, какие компоненты, ....... ?????
Kuusiniemi (2002-10-02 16:26:00) [9]О ключевом поле, которого у Вас нет в таблице.