Хранение очень больших чисел

Добрый день.
Подскажите пожалуйста можно ли как то хранить 20тизначное число в числовом типе? Тип данных int64/uint64? Не могу найти ничего подобного в документации, но возможно я просто не там ищу.

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

Можно

Вопрос только в каком виде.
Обычные целочисленные типы представлены здесь
http://postgresql.ru.net/manual/datatype-numeric.html#DATATYPE-INT
как можно увидеть максимум для INTEGER это 922 337 203 685 477 580 7 - это всего 19 разрядов
Однако, можно воспользоваться DECIMAL (NUMERIC) который допускает до 131072 разрядов перед точкой. Разумеется работает он медленнее, но тут либо-либо

Спасибо, пробую использовать

Спасибо, пробую использовать данный тип.
CREATE TABLE "public"."test" (
"id" integer,
"uid" numeric(30)
);

при попытке вставить в поле uid значение "111111111122222222223333333333" в базе создается запись такого вида "1,11111111111111E29", при попытке изъять запись с помощью джавы получаю значение "111111111111111000000000000000". Такое значение не соответствует записанному в базу. Как быть? Может я не правильно создал таблицу?

Делаю: CREATE TABLE

Делаю:

CREATE TABLE "public"."test" (
"id" integer,
"uid" numeric(30)
);

далее
tmp=# select * from test;
 id | uid 
----+-----
(0 rows)
 
tmp=# INSERT INTO test VALUES(1, 11111111112222222222333333333);
INSERT 0 1
tmp=# select * from test;
 id |              uid              
----+-------------------------------
  1 | 11111111112222222222333333333
(1 row)

так что смотрите вашу джаву :)

Такое ощущение что сам пост

Такое ощущение что сам пост вопроса помагает его решить)
Спасибо Вам, проблема разрешилась сама собой. Для просмотра базы я использую Navicat и он выводил эту цифру в сокращенном виде. При просмотре через консоль все ок. Буду работать дальше.

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

Back to top

(С) Виктор Вислобоков, 2008-2023