powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / ROWID ???
25 сообщений из 32, страница 1 из 2
ROWID ???
    #32437783
SOMNAMBULA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день всем!

Господа, такой вопрос, в каких базах данных используется такое понятие, как ROWID (На примере оракла)? В каких ещё? (я так понимаю, что не во всех). Как называется то же самое в других СУБД?
Извините за несколько некорректный вопрос, но смысл, я думаю, понятен...
...
Рейтинг: 0 / 0
ROWID ???
    #32437958
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да не очень то понятен - а какой смысл вкладываете вы в него?

-- Tygra's --
...
Рейтинг: 0 / 0
ROWID ???
    #32438001
Фотография Я и ёжик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ROWID в Oracle внутренний идентификатор записи, что то типа "прямого адреса" в системе, - ( Id файла, Id блока, номер записи в блоке).
Как раз он является ссылкой на запись в листьях индекса.
В древние времена не мянялся за время жизни записи, с появлением Index Organized Tables и Partitioned Tables потерял своё постоянство для них ( в первом случае является функцией от ключа, во втором может измениться при миграции записи из секции в секцию), в 10G вроде появился еще вид таблиц где ROWID может меняться. Доступен в SQL-выражениях в виде псевдостолбца ROWID таблицы, требует осторожности при использовании.
...
Рейтинг: 0 / 0
ROWID ???
    #32438134
SOMNAMBULA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да-да, про назначение ROWID в оракле я представления имею. Меня интересует как обстоят дела с этим в других СУБД. MS SQL Server, Interbase, Sybase, MySQL, настольные СУБД типа Access. Там тоже такой псевдостолбец используется? И обращиться к нему также - ROWID?
...
Рейтинг: 0 / 0
ROWID ???
    #32438234
Roman Ignatiev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В Interbase это называется rdb$db_key. Длина 8 байт для таблицы. Причем увидеть его нельзя, select не выдаст :) А вот использовать для поиска можно
...
Рейтинг: 0 / 0
ROWID ???
    #32438273
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 SOMNAMBULA

Дык в каких целях тебе надо?

Если идентификатор строки, тогда:
В MS SQL - identity
В Interbase - нет вообще, надо руками присваивать, есть для этого спец. вещь - Последовательность

-- Tygra's --
...
Рейтинг: 0 / 0
ROWID ???
    #32438333
f_w_p
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В Interbase - нет вообще, надо руками присваивать, есть для этого спец. вещь - Последовательность
М.б. ты имел ввиду генераторы.

В Interbase это называется rdb$db_key.
Кстати, значение теперь тоже может менятся. Так что его использование потеряло смысл.
...
Рейтинг: 0 / 0
ROWID ???
    #32438388
x
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
x
Гость
в Access и MS SQL такого нет
...
Рейтинг: 0 / 0
ROWID ???
    #32438391
SOMNAMBULA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для чего мне это надо? ... Меня недавно спросили о существовании механизма скрытой идентификации записи в таблицах базы данных, вот я и про ROWID рассказал (сам работаю с ораклом), и при этом не подумал, что в других СУБД может другой механизм применяться. Вот теперь заинтересовался этим, можно считать, что для общего развития...
Так что получается - если в словаре DDL конкретной СУБД есть что-то типа "create index...", то можно говорить о наличии механизма такой идентификации (типа ROWID в оракл)?
Ой, что-то меня торкнуло на эту тему. Может кто подскажет энциклопедический источник по этому поводу?
...
Рейтинг: 0 / 0
ROWID ???
    #32438494
x
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
x
Гость
Тогда я чего-то не понял

Скрытая идентификация записи в таблице есть, конечно, везде.
А вот наружу она выставляется далеко не всегда
...
Рейтинг: 0 / 0
ROWID ???
    #32438633
Фотография www.fun4me.narod.ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MSSQL - нет
PostrgeSQL - стобец OID
...
Рейтинг: 0 / 0
ROWID ???
    #32438647
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторВ Interbase это называется rdb$db_key.
Кстати, значение теперь тоже может менятся . Так что его использование потеряло смысл.
Чушь.
rdb$db_key сменится только в случае рестора.
...
Рейтинг: 0 / 0
ROWID ???
    #32438787
Фотография Daugava
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В Informix-е скрытое поле rowid также есть во всех таблицах, правда если таблицы созданы с фрагментацией по умолчанию оно не создается, необходимо дополнительно просить сервер об этом (WITH ROWID).
...
Рейтинг: 0 / 0
ROWID ???
    #32439165
Nodir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQLite: ROWID, _ROWID_, OID
...
Рейтинг: 0 / 0
ROWID ???
    #32439459
f_w_p
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb$db_key сменится только в случае рестора.
Я см. в http://www.ibase.ru/v6/ib6faq.htm#dbkey. Да наверное во время одного сеанса вполне можно использовать.
...
Рейтинг: 0 / 0
ROWID ???
    #32439756
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторТак что получается - если в словаре DDL конкретной СУБД есть что-то типа "create index...", то можно говорить о наличии механизма такой идентификации (типа ROWID в оракл)?

Это как это так ты связал две разные вещи???

-- Tygra's --
...
Рейтинг: 0 / 0
ROWID ???
    #32440292
f_w_p
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это как это так ты связал две разные вещи???
О сказал! Неиначе начал тяпницу отмечать:-)))
...
Рейтинг: 0 / 0
ROWID ???
    #32440397
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да. Еще со вторника

-- Tygra's --
...
Рейтинг: 0 / 0
ROWID ???
    #32457686
Фотография Leonid
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторв Access и MS SQL такого нет

В MS SQL есть даже лучше, чем в oracle-овский ROWID.
поле типа uniqueidentifier .
Вот уж это значение точно не изменится.
А ROWID в последних версиях Oracle может "плавать".
...
Рейтинг: 0 / 0
ROWID ???
    #32457841
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ROWID не поле !!! В таблице оно не хранится ! (За исключением некоторых технических моментов, не имеющих отношения к ЛОГИКЕ хранения)
...
Рейтинг: 0 / 0
ROWID ???
    #32457842
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если уж проводить аналогии, то это скорее номер записи в понятиях DBF
...
Рейтинг: 0 / 0
ROWID ???
    #32457872
Zaxx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
LeonidВ MS SQL есть даже лучше, чем в oracle-овский ROWID.
поле типа uniqueidentifier.
Вот уж это значение точно не изменится.
А ROWID в последних версиях Oracle может "плавать".

Если не знаешь что такое ROWID, то не путай других незнающих...
ROWID мог плавать во всех версиях Oralce, и сравнение его c uniqueidentifier аналогично сравнению телевизора с холодильником. У них разное функциональное назначение.
...
Рейтинг: 0 / 0
ROWID ???
    #32458190
Фотография Leonid
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZaxxЕсли не знаешь что такое ROWID, то не путай других незнающих...
ROWID мог плавать во всех версиях Oralce, и сравнение его c uniqueidentifier аналогично сравнению телевизора с холодильником. У них разное функциональное назначение.

Уважаемый Zaxx, я знаю, что такое ROWID и как он формируется. Могу даже точную документацию процетировать.
Я говорю о тех задачах, которые на него можно было бы "повесить". А именно уникальный идентификатор записи.

uniqueidentifier - это не ROWID, но задачу уникальной идентификации он решает куда лучше. Можно даже сказать, что это уникальный идентификатор в рамках планеты. Вероятность его повторения мала.
...
Рейтинг: 0 / 0
ROWID ???
    #32458337
Gt.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Gt.
Гость
тогда надеюсь вы заметили что в той самой документации как оракл настойчиво предупреждает о невозможности использовать rowid как уникальный идентификатор записи ...
...
Рейтинг: 0 / 0
ROWID ???
    #32458614
Zaxx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Leonid Уважаемый Zaxx, я знаю, что такое ROWID и как он формируется.
Не похоже, иначе не было-бы фразы про то-что "ROWID в последних версиях Oracle может "плавать"".

Leonid uniqueidentifier - это не ROWID, но задачу уникальной идентификации он решает куда лучше.

Я повторюсь: вы сравниваете телевизор с холодильником. ROWID вообще не решает задачу уникальной идентификации.

Leonid Я говорю о тех задачах, которые на него можно было бы "повесить". А именно уникальный идентификатор записи.

Вы пытаетесь повесить на него задачи, которые он не может выполнять.
Задачу уникальной идентификации в Oracle выполняют sequens-ы (причём более гибко и удобно чем identity в M$SQL).

Если вам так нравиться uniqueidentifier, и вы так сожалеете что этого типа данных нет в Oracle, то заведите поле Char(32) и генерите в него GUID функцией sys_guid(), хоть на сервере (что будет вам привычнее), хоть на клиенте (что будет всем удобнее).
...
Рейтинг: 0 / 0
25 сообщений из 32, страница 1 из 2
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / ROWID ???
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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