Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.01.05;
Скачать: [xml.tar.bz2];

Вниз

Полуредактируемый запрос   Найти похожие ветки 

 
AngelSaint   (2003-12-09 07:31) [0]

Мастера!
Есть запрос:
select s.rowid, asi.rowid, asi.znach, s.name, s.ed_izm
from base051.tbl_incedent i, base051.tbl_add_sveden s, base051.tbl_sveden_incedent asi
where asi.id_incedent = i.id and
s.id = asi.id_add_sveden and
i.id = 111


Проблема в следующем: в результирующем наборе данных, поле s.name можно редактировать, а поле asi.znach нельзя.

Вопрос: что ето за глюк такой??? вроде обычный запрос, но ведет он себя как-то необычно. Заранее благодарен за умные мысли :)


 
Кщд   (2003-12-09 08:40) [1]

ни СУБД, ни компонент доступа.
да и наборы перекрестных данных не должны быть редактируемы, если программно не оговорено обратное.
имхо, это не глюк, а RTFM. :)


 
Sergey13   (2003-12-09 08:53) [2]

2AngelSaint (09.12.03 07:31)
Так это нормально, ИМХО. Ты объединяешь "главную таблицу" с каким то "справочником". Связь наверное 1:М. На стороне 1 редактировать можно, на стороне М нет. Я бы тоже на месте Оракла так поступил. 8-)


 
DenK_vrtz   (2003-12-09 08:55) [3]

Если предположить, что СУБД - ORACLE, а ROWID - псевдостолбец, а компоненты доступа к данным - DOA, то в указанном запросе редактирование идет по s.rowid - идентификатору строки таблицы tbl_add_sveden.
При попытке редактированя записей других таблиц запроса, по идее, должна быть получена ошибка о инвалидном столбце.


 
AngelSaint   (2003-12-09 11:16) [4]

>>Sergey13
Причиа не в этом. подобные запросы к другим таблицам ведут себя нормально, т.е. все что нужно редактируется

Мож у кого еще есть мнения?


 
DenK_vrtz   (2003-12-09 11:22) [5]

>AngelSaint
>все что нужно редактируется

я бы сказал, все что МОЖНО редактируется!


 
Кщд   (2003-12-09 11:30) [6]

AngelSaint (09.12.03 11:16) [4]
обычно Sergey13 телепат, но сегодня, видимо, магнитные бури.
Или задай вопрос нормально или можешь погадать на картах. :)
И ещё раз: на изменение набора данных полученного запросом из нескольких таблиц НЕОБХОДИМО прописывать реакцию на эти самые изменения.


 
Sergey13   (2003-12-09 11:37) [7]

2AngelSaint (09.12.03 11:16) [4]
Так может там 1:1 связь. Я не ковырял такую возможность, т.к. считаю ее вредной и небезопасной, но скорее всего там стоит проверка на количество обновляемых строк. Если у тебя в запросе встречается несколько одинаковых rowid "нередактирующейся" таблицы, то соответственно изменение блокируется. Или может проходит там где 1:М, но в наборе данные со стороны М тоже "случайно" оказались уникальными.
Я бы не советовал тебе пользоваться такими методами.


 
Vlad   (2003-12-09 11:49) [8]

Не стоит возвращать 2 rowid в одном наборе данных.
Если по ним происходит дальнейший апдейт, то это вобще может быть чревато неприятностями, если записи не блокируются.



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

Форум: "Базы";
Текущий архив: 2004.01.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.112 c
6-12017
Mag
2003-11-03 17:43
2004.01.05
Считывание с форм HTML


14-12142
IronHawk
2003-12-12 16:44
2004.01.05
Обалдеть, забыл всё напрочь, хелп пзл, исключить из списка в Comb


4-12204
X-Disa
2003-11-04 15:23
2004.01.05
Окна


14-12042
Юрий Зотов
2003-12-07 21:49
2004.01.05
---|Ветка была без названия|---


4-12201
MaG
2003-11-04 16:32
2004.01.05
Определение имени ...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский