Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.19;
Скачать: CL | DM;

Вниз

Первичный ключ GUID vs NUMBER в Oracle   Найти похожие ветки 

 
Курдль ©   (2006-10-26 16:53) [40]


> Ломброзо ©   (26.10.06 16:47) [39]
> У меня есть две системки на сотню тыс. записей в таблице
> max на гуидах. Работает как часы. Привык и руку набил.

Так у тебя реально не в одной таблице "GUID от безысходности" а такой стиль создания БД под оракл?
Попробуй "отбить" себе руку на место и спланируй следующий модкль, как дохтур Кайт прописал :)


 
Игорь Шевченко ©   (2006-10-26 16:57) [41]

Ломброзо ©   (26.10.06 16:47) [39]

Ты часом объем файла в 4 ГБ не превысил ? :)


 
Petr V.Abramov   (2006-10-26 22:08) [42]

> Ломброзо ©   (26.10.06 16:47) [39]
 скорее всего баг
> Игорь Шевченко ©   (26.10.06 16:57) [41]
 там другая ошибка вылазит, проверено друзьями :)))

вроде как GUID - 15 байт
 TGUID = packed record
   D1: Longword;
   D2: Word;
   D3: Word;
   D4: array[0..7] of Byte;
 end;
по сведениям calc.exe, 2^120 = 1.3292279957849158729038070602803e+36 , т.е в number влезет


 
Ketmar ©   (2006-10-26 22:13) [43]

>[42] Petr V.Abramov 26-Oct-2006, 22:08
>вроде как GUID - 15 байт
а ещё байт где потерял? %-)


 
Ломброзо ©   (2006-10-26 22:14) [44]

Petr V.Abramov   (26.10.06 22:08) [42]
Садись, кол.
Гуид - 128 бит; ежели оный перевести в строчку без скобочек и черточек - то 32 символа (256) Таки да, оверхед. Но с представлением гуида в виде rawid (16 байт) страшно неудобно работать.


 
Petr V.Abramov   (2006-10-26 22:26) [45]

> Ломброзо ©   (26.10.06 22:14) [44]
да все равно влезет, проверил


 
Sergey Masloff   (2006-10-26 22:27) [46]

Можете пинать но я когда прижало (были ноды без гарантированной связи более того некоторые с гарантированной несвязью) чтобы не плодить два поля сделал "дробные" части
 XXXXX.YYYY
ХХХХ это что генератор дает что после точки номер нода
NUMBERу это все равно никаких проблем не возникает.


 
Desdechado ©   (2006-10-26 22:32) [47]

> Ты часом объем файла в 4 ГБ не превысил ? :)
или REDO закончились
или tablespace ограниченного размера


 
Ломброзо ©   (2006-10-26 22:48) [48]

1,e+38 < 3,4e+38
Не влезает :)


 
Petr V.Abramov   (2006-10-26 23:16) [49]

влезает :)
insert into test.t1 values (power(2, 128), "много")

select to_char(id, rpad("0" , 39, "0")) from test.t1
340282366920938463463374607431768211456
:)


 
Ломброзо ©   (2006-10-26 23:31) [50]

Petr V.Abramov   (26.10.06 23:16) [49]

8-O. Гугл гласит, что на скэйл и присижн в сумме положено 38 знаков.


 
Petr V.Abramov   (2006-10-26 23:37) [51]

> Ломброзо ©   (26.10.06 23:31) [50]
не читайте советских газет


Oracle stores numeric data in variable-length format. Each value is stored in scientific
notation, with 1 byte used to store the exponent and up to 20 bytes to store the
mantissa. The resulting value is limited to 38 digits of precision.

(c) первоисточник


 
Ломброзо ©   (2006-10-26 23:40) [52]

Аспасиба :) Век живи - век учись. Правда меня, как специалиста далекого от арифметики, наличие мантисс с экспонентами настораживает.


 
Petr V.Abramov   (2006-10-26 23:57) [53]

> Ломброзо ©   (26.10.06 23:40) [52]
2^419 влезает, так что спите спокойно :))))


 
Danilka ©   (2006-11-01 09:14) [54]

[46] Sergey Masloff   (26.10.06 22:27)
Ну и в чем отличие от [23], кроме отсутствия точки у меня? :)



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

Текущий архив: 2006.11.19;
Скачать: CL | DM;

Наверх




Память: 0.56 MB
Время: 0.031 c
2-1162465442
dima_shapkin
2006-11-02 14:04
2006.11.19
Tform


1-1160570539
AlexeyT
2006-10-11 16:42
2006.11.19
Проблема с WebBrowser.OnFileDownload


15-1162444291
Slider007
2006-11-02 08:11
2006.11.19
С днем рождения ! 2 ноября


3-1158774261
anton773
2006-09-20 21:44
2006.11.19
количество записей в секунду


15-1162060770
Чапаев
2006-10-28 22:39
2006.11.19
Ещё глючок DMClient а