![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите выполнить Refresh [D6, Acces]
sdram © (2002-10-03 15:38:00)При попытке вызвать myTADODataSet.Refresh Ругается "Недостаточно сведений ключевого поля для обновления" но если перечитать Close Open все нормально. О каком ключевом поле идет речь?
myTADODataSet построен на основании запроса:
SELECT *
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
ORDER BY t_name_c.id;
Структура таблиц такова:
типа t_name_c (id, code)
типа t_name (code, name)
sdram (2002-10-03 16:24:00) [1]Точно у меня при выполнении создалась таблица с неопределенным Primary Key . Все заработало. Большее спасибо.
Prooksius (2002-10-03 16:23:00) [2]Есть такая идея.
Возможно, у тебя запрос возвращает дубликаты данных. Совершенно одинаковые строки. Т.е. ты неправильно объединяешь таблицы в запросе.
Пример: select R.Name from Rank R, Person P where R.ID = 9
этот запрос выдаст столько R.Name, сколько строк в Person. и Все Name одинаковые (ID = 9).
Проанализируй свой запрос и проверь? что у тебя есть после where.
sdram (2002-10-03 16:14:00) [3]В каждой из таблиц есть ключевые поля.
Prooksius (2002-10-03 16:12:00) [4]2 sdram © (03.10.02 16:04)
Ну хотя бы ответь на 1 вопрос.
sdram (2002-10-03 16:04:00) [5]Что за скрапты такие, где взять их?
sdram (2002-10-03 16:00:00) [6]Если уж в Запросе
SELECT *
значит все поля на месте в т. ч. и ключевые.
Prooksius (2002-10-03 16:00:00) [7]У тебя определены Primary Keys для всех этих таблиц?
Дай скрипты 2 таблиц разного типа.
sdram (2002-10-03 15:56:00) [8]У меня запрос при выполнении формируется, и в Fields Editor -е я поля не добавлял, потому как потом других полей не увижу
Prooksius (2002-10-03 15:49:00) [9]Так и не поборол ты свой монстровский запрос? :)
Сделай на датасете RightClick, Fields Editor.
У тебя там все поля согласно данному запросу или ты некоторые поубивал? Если поубивал - добавь и попробуй так.