Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.06.2013, 14:05   #1
NataHamster
Пользователь
 
Регистрация: 27.06.2013
Сообщений: 22
По умолчанию PL/sql developer просит вставить "rowid" чтобы работать с таблицей

Запрос select * from WEST t
Пытаюсь снять замок, чтобы работать с таблицей, выдает: "The query results are not updateable. Include the ROWID to get updateable results ".
Как должен код выглядеть, куда именно этот ROWID вставлять. Заранее спасибо.
NataHamster вне форума Ответить с цитированием
Старый 27.06.2013, 14:30   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

во-первых, удобнее нажать на таблице (слева в дереве) правой кнопкой мышки и выбрать "Edit data" (у меня на это действие даже горячая клавиша F4 назначена

во-вторых, PL/SQL developer "честная" программа. Т.е. она позволяет Вам изменять запрос и выполнять его.
допишите в свой запрос rowid и можете редактировать
вот так:
Код:
select t.*, ROWID from WEST t
Serge_Bliznykov вне форума Ответить с цитированием
Старый 27.06.2013, 16:53   #3
NataHamster
Пользователь
 
Регистрация: 27.06.2013
Сообщений: 22
По умолчанию

Serge_Bliznykov, спасибо Вам большое, все получилось. Вы можете рассказать, что это такое ROWID вообще?
NataHamster вне форума Ответить с цитированием
Старый 27.06.2013, 16:55   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Это кажись директива, выдающая уникальный идентификатор записи.
В твоем случае видимо что-то непродуманно в структуре базы, раз им приходится пользоваться.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 27.06.2013, 19:58   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Это кажись директива, выдающая уникальный идентификатор записи.
Ну, практически, так и есть. см. 5.2 Псевдостолбец ROWID

Цитата:
В твоем случае видимо что-то непродуманно в структуре базы, раз им приходится пользоваться.
не-не-не-не-не-не-не-не-не-не!
Структура таблицы здесь вообще не при чём!
Это особенность Oracle и визуального редактирования записей в БД Oracle (уж, как минимум в PL/SQL Developer'e, а, может быть, и не только в нём!)
Serge_Bliznykov вне форума Ответить с цитированием
Старый 27.06.2013, 21:19   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
Структура таблицы здесь вообще не при чём!
А я и не говорил про таблицы. Структура базы подразумевает собой механизм управления данными а не только сами правила их расположения и связок.
Чтобы прибегать к таким указательным столбцам нужны достаточно веские основания. Вот и спрашиваю, откуда дровишки.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 27.06.2013, 22:46   #7
Vapaamies
Ваш К. О.
Участник клуба
 
Аватар для Vapaamies
 
Регистрация: 26.12.2012
Сообщений: 1,755
По умолчанию

Если мне не изменяет память, компоненты DOA в обязательном порядке требовали указания rowid для включения редактирования, а ODAC-у было достаточно указания ключевых полей. И опять же, если мне снова не изменяет память, PL/SQL Developer написан именно на DOA.

Речь же вообще про визуальное редактирование таблицы (запроса) сторонним инструментом, не? Я даже в TOAD не припоминаю возможности задать ключевые поля или их автоопределения. Только через rowid и работает.
Vapaamies вне форума Ответить с цитированием
Старый 27.06.2013, 22:47   #8
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Вот и спрашиваю, откуда дровишки.
это Вы у разработчиков Oracle поинтересуйтесь!

p.s. зря по ссылочке не сходили, там вроде бы всё внятно рассказано...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 27.06.2013, 23:01   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
это Вы у разработчиков Oracle поинтересуйтесь!
Да я не про саму суть идентификатора. Мне интересно по какой причине он автору понадобился.
Цитата:
Я даже в TOAD не припоминаю возможности задать ключевые поля или их автоопределения.
Дай бог не соврать наш АБД без проблем там делал ключевые поля..
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
"А почему при загрузке файла просит ввести свой номер?" NSvirus Свободное общение 21 14.05.2013 21:46
Ошибка "Размер поля недостаточен, чтобы принять добавляемые данные. Попробуйте вставить меньшее количество данных" eraserhp Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) 29 30.08.2012 22:44
Как вставить кнопку "Поделится" или "мне нравится" в phpbb3 borecc PHP 1 07.03.2011 13:44
Воть моя "история".... или новичек просит помощь. kry4a Свободное общение 5 09.02.2008 00:20