Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.08.03;
Скачать: CL | DM;

Вниз

ADO. Не выполняются изменения в таблице   Найти похожие ветки 

 
well ©   (2008-02-19 14:00) [0]

Ну не совсем в таблице :).
В общем так. База MSSQL из 2 таблиц Table1,Table2 , соединяюсь с базой через компоненты ADO.
Использую компонент ADOQuery. Данные вывожу в DBGrid.

Запрос такой :
SELECT Table1.ID, Table1.Name
FROM Table1
INNER JOIN Table2 ON Table1.ID=Table2.ID


Во время выполнения программы я хочу внести изменения в поле Name. И всё получается!
Но если я чуть изменю запрос и добавлю в список запрашиваемых полей поле из второй таблицы:
SELECT Table1.ID, Table1.Name,Table2.Name
FROM Table1
INNER JOIN Table2 ON Table1.ID=Table2.ID

То при попытке изменить то же поле выдаётся ошибка: "Недостаточно сведений ключевого поля для обновления".
Можно ли выполнять изменения используя сложные запросы в качестве источника данных? (ну если исползовать выборку из полей только одной таблицы то можно).
Понятно, что изменения надо производить в таблице, а не в запросе, но почему в первом случае изменения выполняются?


 
Johnmen ©   (2008-02-19 14:18) [1]

Можно.
http://www.yandex.ru/yandsearch?text=%CD%E5%E4%EE%F1%F2%E0%F2%EE%F7%ED%EE+%F1%E2%E5%E4%E5%ED%E8%E9+%EA%EB%FE%F7%E5%E2%EE%E3%EE+%EF%EE%EB%FF+%E4%EB%FF+%EE%E1%ED%EE%E2%EB%E5%ED%E8%FF


 
well ©   (2008-02-19 16:15) [2]

Спасибо! Проблема оказывается известная.
У меня всё разрешилось введением для каждой таблицы primary key. И всё!


 
ANB   (2008-02-19 16:21) [3]


> введением для каждой таблицы primary key.

За таблицу без ПК надо отрывать руки.


 
Sergey13 ©   (2008-02-19 16:24) [4]

> [2] well ©   (19.02.08 16:15)

Я бы посоветовал осторожнее относиться к редактированию (особенно в гриде) "сложного" датасета, полученного из нескольких таблиц. Можно поиметь неприятные неожиданности.



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

Текущий архив: 2008.08.03;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.02 c
15-1213659824
Randew
2008-06-17 03:43
2008.08.03
Подскажите литературу


15-1213760616
AlexanderMS
2008-06-18 07:43
2008.08.03
Подскажите, пожалуйста, хороший формат голосовой аудиозаписи.


4-1194154748
San1712
2007-11-04 08:39
2008.08.03
Как можно программно отследить перемещения по реестру человека ?


15-1213350730
Mystic
2008-06-13 13:52
2008.08.03
JavaScript, шахматы, перемещалка фигур, alpha


2-1214983496
MaryM
2008-07-02 11:24
2008.08.03
Перемещение узлов TTreeView drag&drop ом