Лучший способ сохранить размер файла в байтах? - PullRequest
7 голосов
/ 16 июня 2009

Как лучше всего хранить размер файла в байтах в базе данных?

Учитывая, что размер может быть огромным, МБ, ГБ, ТБ ...

Я использую bigint (максимум: 9.223.372.036.854.775.807), но лучше ли это?

Ответы [ 2 ]

10 голосов
/ 16 июня 2009

Это тип, который я бы выбрал. Он соответствует длинному типу в c # (64-разрядное число) и является тем же типом, который используется Windows для хранения размеров файлов.

3 голосов
/ 16 июня 2009

64-битное целое - это все, что вам нужно.

Если bigint имеет максимальное значение 9,223.372.036.854.775.807, то это предполагает 64-разрядное целое число со знаком, что вполне достаточно.

Из описания не похоже, что 32-разрядные целые числа будут делать то, что вам нужно, поэтому, если вам на самом деле не нужно поддерживать большие размеры, чем 9.223.372.036.854.775.807, то bigint - это наиболее эффективная форма из возможных выбрать.

Если вам нужны большие значения (я не могу себе представить, почему), то вам нужно либо сохранить его как строку, либо найти библиотеку большого числа, которая будет использовать столько байтов, сколько необходимо для хранения числа ( т.е. не имеет максимального размера).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...