![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
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 пытается работать с оригинальной таблицей. можно его отучить от этого?