Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
Добрый день всем! Господа, такой вопрос, в каких базах данных используется такое понятие, как ROWID (На примере оракла)? В каких ещё? (я так понимаю, что не во всех). Как называется то же самое в других СУБД? Извините за несколько некорректный вопрос, но смысл, я думаю, понятен... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 12:53 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
Да не очень то понятен - а какой смысл вкладываете вы в него? -- Tygra's -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 13:54 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
ROWID в Oracle внутренний идентификатор записи, что то типа "прямого адреса" в системе, - ( Id файла, Id блока, номер записи в блоке). Как раз он является ссылкой на запись в листьях индекса. В древние времена не мянялся за время жизни записи, с появлением Index Organized Tables и Partitioned Tables потерял своё постоянство для них ( в первом случае является функцией от ключа, во втором может измениться при миграции записи из секции в секцию), в 10G вроде появился еще вид таблиц где ROWID может меняться. Доступен в SQL-выражениях в виде псевдостолбца ROWID таблицы, требует осторожности при использовании. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 14:09 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
Да-да, про назначение ROWID в оракле я представления имею. Меня интересует как обстоят дела с этим в других СУБД. MS SQL Server, Interbase, Sybase, MySQL, настольные СУБД типа Access. Там тоже такой псевдостолбец используется? И обращиться к нему также - ROWID? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 14:56 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
В Interbase это называется rdb$db_key. Длина 8 байт для таблицы. Причем увидеть его нельзя, select не выдаст :) А вот использовать для поиска можно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 15:36 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
2 SOMNAMBULA Дык в каких целях тебе надо? Если идентификатор строки, тогда: В MS SQL - identity В Interbase - нет вообще, надо руками присваивать, есть для этого спец. вещь - Последовательность -- Tygra's -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 15:49 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
В Interbase - нет вообще, надо руками присваивать, есть для этого спец. вещь - Последовательность М.б. ты имел ввиду генераторы. В Interbase это называется rdb$db_key. Кстати, значение теперь тоже может менятся. Так что его использование потеряло смысл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 16:10 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
в Access и MS SQL такого нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 16:24 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
Для чего мне это надо? ... Меня недавно спросили о существовании механизма скрытой идентификации записи в таблицах базы данных, вот я и про ROWID рассказал (сам работаю с ораклом), и при этом не подумал, что в других СУБД может другой механизм применяться. Вот теперь заинтересовался этим, можно считать, что для общего развития... Так что получается - если в словаре DDL конкретной СУБД есть что-то типа "create index...", то можно говорить о наличии механизма такой идентификации (типа ROWID в оракл)? Ой, что-то меня торкнуло на эту тему. Может кто подскажет энциклопедический источник по этому поводу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 16:25 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
Тогда я чего-то не понял Скрытая идентификация записи в таблице есть, конечно, везде. А вот наружу она выставляется далеко не всегда ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 16:57 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
MSSQL - нет PostrgeSQL - стобец OID ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 17:49 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
авторВ Interbase это называется rdb$db_key. Кстати, значение теперь тоже может менятся . Так что его использование потеряло смысл. Чушь. rdb$db_key сменится только в случае рестора. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 17:52 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
В Informix-е скрытое поле rowid также есть во всех таблицах, правда если таблицы созданы с фрагментацией по умолчанию оно не создается, необходимо дополнительно просить сервер об этом (WITH ROWID). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 19:02 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
SQLite: ROWID, _ROWID_, OID ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 09:40 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
rdb$db_key сменится только в случае рестора. Я см. в http://www.ibase.ru/v6/ib6faq.htm#dbkey. Да наверное во время одного сеанса вполне можно использовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 11:30 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
авторТак что получается - если в словаре DDL конкретной СУБД есть что-то типа "create index...", то можно говорить о наличии механизма такой идентификации (типа ROWID в оракл)? Это как это так ты связал две разные вещи??? -- Tygra's -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 13:00 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
Это как это так ты связал две разные вещи??? О сказал! Неиначе начал тяпницу отмечать:-))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 15:55 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
Да. Еще со вторника -- Tygra's -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 16:53 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
авторв Access и MS SQL такого нет В MS SQL есть даже лучше, чем в oracle-овский ROWID. поле типа uniqueidentifier . Вот уж это значение точно не изменится. А ROWID в последних версиях Oracle может "плавать". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2004, 20:27 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
ROWID не поле !!! В таблице оно не хранится ! (За исключением некоторых технических моментов, не имеющих отношения к ЛОГИКЕ хранения) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2004, 07:43 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
Если уж проводить аналогии, то это скорее номер записи в понятиях DBF ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2004, 07:44 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
LeonidВ MS SQL есть даже лучше, чем в oracle-овский ROWID. поле типа uniqueidentifier. Вот уж это значение точно не изменится. А ROWID в последних версиях Oracle может "плавать". Если не знаешь что такое ROWID, то не путай других незнающих... ROWID мог плавать во всех версиях Oralce, и сравнение его c uniqueidentifier аналогично сравнению телевизора с холодильником. У них разное функциональное назначение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2004, 08:26 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
ZaxxЕсли не знаешь что такое ROWID, то не путай других незнающих... ROWID мог плавать во всех версиях Oralce, и сравнение его c uniqueidentifier аналогично сравнению телевизора с холодильником. У них разное функциональное назначение. Уважаемый Zaxx, я знаю, что такое ROWID и как он формируется. Могу даже точную документацию процетировать. Я говорю о тех задачах, которые на него можно было бы "повесить". А именно уникальный идентификатор записи. uniqueidentifier - это не ROWID, но задачу уникальной идентификации он решает куда лучше. Можно даже сказать, что это уникальный идентификатор в рамках планеты. Вероятность его повторения мала. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2004, 11:56 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
тогда надеюсь вы заметили что в той самой документации как оракл настойчиво предупреждает о невозможности использовать rowid как уникальный идентификатор записи ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2004, 12:54 |
|
||
|
ROWID ???
|
|||
|---|---|---|---|
|
#18+
Leonid Уважаемый Zaxx, я знаю, что такое ROWID и как он формируется. Не похоже, иначе не было-бы фразы про то-что "ROWID в последних версиях Oracle может "плавать"". Leonid uniqueidentifier - это не ROWID, но задачу уникальной идентификации он решает куда лучше. Я повторюсь: вы сравниваете телевизор с холодильником. ROWID вообще не решает задачу уникальной идентификации. Leonid Я говорю о тех задачах, которые на него можно было бы "повесить". А именно уникальный идентификатор записи. Вы пытаетесь повесить на него задачи, которые он не может выполнять. Задачу уникальной идентификации в Oracle выполняют sequens-ы (причём более гибко и удобно чем identity в M$SQL). Если вам так нравиться uniqueidentifier, и вы так сожалеете что этого типа данных нет в Oracle, то заведите поле Char(32) и генерите в него GUID функцией sys_guid(), хоть на сервере (что будет вам привычнее), хоть на клиенте (что будет всем удобнее). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2004, 14:21 |
|
||
|
|

start [/forum/topic.php?fid=35&fpage=51&tid=1554163]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
19ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 270ms |
| total: | 385ms |

| 0 / 0 |
