Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / вьюха и ADOQuery / 10 сообщений из 10, страница 1 из 1
08.08.2003, 19:22
    #32231643
Tung
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вьюха и ADOQuery
Привет всем!!
такая проблема возникла:

есть вьюха:

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

Но ID действительно должен быть идентификатором в обоих таблицах. То есть, если между s и p связь один ко многим, то работать не будет. Ведь в таком случае сервер не будет занть какую из записей в p нужно изменить. Хотя, раз через QA работатет, то с этим всё в порядке.
...
Рейтинг: 0 / 0
12.08.2003, 09:36
    #32233572
Mihail R.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вьюха и ADOQuery
по поводу
v object inspector такой фичи нет, прописал вручную, пишет undeclared dentifier adcriteriakey, вечный вопрос "что делать???"
добавь
Код: plaintext
uses ADOInt;
...
Рейтинг: 0 / 0
12.08.2003, 10:56
    #32233693
Umak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вьюха и ADOQuery
А Если две записи одинаковы - какую сервер должен обновить?!
Ошибка будет!
Необходимо добавить ключи в запрос:
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
08.09.2003, 09:56
    #32258001
Dmitry+
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вьюха и ADOQuery
Код: plaintext
И вообще нежелательно ключевое поле во всех таблица называть одинаково - ID

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


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