Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ADO и view [D7, MSSQL]


alex_*** ©   (2005-07-20 11:33:00) 

ADODataSet выбирает данные из View. Пользователь не имеет прав на select, update напрямую из таблицы, на кот. ссылается view. При попытке обновить одну запись - ds.RecordSet.Resync(adAffectCurrent, adResyncAllValues) вылетает "недостаточно сведений ключевого поля для обновления". Пытался выставить св-во ключевого поля pflnKey=truе - не работает. Я так понимаю не выбираются метаданные из view. ADO умеет вообще работать с view?


alex_***   (2005-07-20 14:23:00) [1]

вот это ответ. коротко и по существу. Спасибо большое. все работает


MOA   (2005-07-20 13:17:00) [2]

Без текста сложно догадаться о конкретной причине. Однако попробуйте (или посмотрите в BOL)
CREATE VIEW name WITH VIEW_METADATA ...
Посмотрите, при апдейтах может пригодится и
WITH CHECK OPTION
Удачи!


alex_***   (2005-07-20 12:57:00) [3]

блин, давай по существу. Если нечего сказать, нечего флейм разводить.


Плохиш   (2005-07-20 12:50:00) [4]


> alex_***   (20.07.05 12:40) [6]

A view is a " virtual table" in a database whose contents are defined by an SQL SELECT statement. To the database user, the view appears just like a real table, with a set of named columns and rows of data. In reality, a VIEW is simply an SQL statement that is dynamicallyexecuted by the Advantage SQL engine when a view is being utilized, and the result set of the query is treated as a table.

Если проблемы с незнакомым языком, расщифровываю, VIEW данных не имеет.


alex_***   (2005-07-20 12:40:00) [5]

И что же это?. Если такой умный, лучше скажи мне как из вьюхи сделать fetch для одной записи, а не для всего набора.


Плохиш   (2005-07-20 12:36:00) [6]


> alex_***   (20.07.05 12:25) [4]
> дело в правах. на вьюху права есть, а на таблицу нет. Так
> пусть с вьюхой и работает.

Можно вопрос? Вы вообще знаете что-такое "вьюха"?

> propertories['Unique Table'].Value := 'v_TBL' не помогает

А это что-такое и чем оно должно было помочь?


alex_***   (2005-07-20 12:25:00) [7]

если бы я знал как это дать, я бы это задал и вопросов бы не задавал.
хотелось бы верить про правильные команды...
дело в правах. на вьюху права есть, а на таблицу нет. Так пусть с вьюхой и работает. propertories['Unique Table'].Value := 'v_TBL' не помогает - говорит не находит такого объекта


sniknik   (2005-07-20 12:11:00) [8]

> "недостаточно сведений ключевого поля для обновления"
почему бы ему не поверить и исходя из этого дать ему то что он просит?

> ADO умеет вообще работать с view?
только если его "хозяин" задает ему правильные команды. ;)

> в догонку: даже когда в CommandText указывается View, ADO пытается работать с оригинальной таблицей. можно его
> отучить от этого?
т.е.? чтобы таблицу не трогало? откуда тогда данные выбирать, вьюшка же не на пустоту цепляется.


alex_***   (2005-07-20 11:39:00) [9]

в догонку: даже когда в CommandText указывается View, ADO пытается работать с оригинальной таблицей. можно его отучить от этого?


alex_***   (2005-07-20 11:38:00) [10]

в догонку: даже когда в CommandText указывается View, ADO пытается работать с оригинальной таблицей. можно его отучить от этого?


Наверх

Титульная страница Поиск, карта сайта Написать письмо