powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / вьюха и ADOQuery
10 сообщений из 10, страница 1 из 1
вьюха и ADOQuery
    #32231643
Фотография Tung
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем!!
такая проблема возникла:

есть вьюха:

create view platej
as
Select s.name, p.price, p.price1, p.price2, p.price3 from specialnost as s
inner join price as p on(s.id=p.id)

в ADOQuery не дает изменить стоимость, пишет insuficients key column information for updating or refreshing,
руками в QA меняется без проблем,

что в AdoQuery нарулить такое??
...
Рейтинг: 0 / 0
вьюха и ADOQuery
    #32231656
MrAlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще-то изменять данные во вьюхах можно только если они взяты из одной таблицы, а не из нескольких. Но это может зависеть от используемого сервера БД.
...
Рейтинг: 0 / 0
вьюха и ADOQuery
    #32231661
ZrenBy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй
Код: plaintext
1.
2.
ADOQuery.Properties['Unique Table'].Value    := 'price';
ADOQuery.Properties['Update Criteria'].Value := adCriteriaKey;
...
Рейтинг: 0 / 0
вьюха и ADOQuery
    #32231965
Фотография Tung
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
v object inspector такой фичи нет, прописал вручную, пишет undeclared identifier adcriteriakey,
вечный вопрос "что делать???"
...
Рейтинг: 0 / 0
вьюха и ADOQuery
    #32231969
Фотография Tung
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to mrAlex
БД MSSQL 2000, скриптами в query analyzer'e я могу менять а через делфю не хочет....
...
Рейтинг: 0 / 0
вьюха и ADOQuery
    #32232175
Mik Prokoshin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если p.id или s.id добавить в выводимые поля view ? И если список полей у ADOQuery определен, то включить его туда...
По-моему, проблема в невозможности идентифицировать строку view, в которую update делать.
...
Рейтинг: 0 / 0
вьюха и ADOQuery
    #32232503
Дмитрий Мыльников
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне кажется, что Mik Prokoshin прав. Оно же не просто так пишет
"insuficients key column information for updating or refreshing" :)

Но ID действительно должен быть идентификатором в обоих таблицах. То есть, если между s и p связь один ко многим, то работать не будет. Ведь в таком случае сервер не будет занть какую из записей в p нужно изменить. Хотя, раз через QA работатет, то с этим всё в порядке.
...
Рейтинг: 0 / 0
вьюха и ADOQuery
    #32233572
Фотография Mihail R.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по поводу
v object inspector такой фичи нет, прописал вручную, пишет undeclared dentifier adcriteriakey, вечный вопрос "что делать???"
добавь
Код: plaintext
uses ADOInt;
...
Рейтинг: 0 / 0
вьюха и ADOQuery
    #32233693
Фотография Umak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А Если две записи одинаковы - какую сервер должен обновить?!
Ошибка будет!
Необходимо добавить ключи в запрос:
Select s.id,p.id ,s.name, p.price, p.price1, p.price2, p.price3 from specialnost as s
inner join price as p on(s.id=p.id)
И вообще нежелательно ключевое поле во всех таблица называть одинаково - ID
...
Рейтинг: 0 / 0
вьюха и ADOQuery
    #32258001
Dmitry+
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
И вообще нежелательно ключевое поле во всех таблица называть одинаково - ID

А почему нежелательно? Есть какие-то объективные причины - особенности работы с ADO?
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / вьюха и ADOQuery
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]