Каков размер SQL Int (N)?
Простой вопрос Я попытался выполнить поиск в Google, и после примерно 6 поисков я решил, что здесь будет быстрее.
Насколько большой int в SQL?
-- table creation statement.
intcolumn INT(N) NOT NULL,
-- more table creation statement.
Насколько велик этот элемент INT(N)
? Каков его ассортимент? Это 2 ^ N или N байтов? (2 ^ 8N)? Или даже что-то еще, о чем я понятия не имею?
Ответы
Ответ 1
Это зависит от базы данных. MySQL имеет расширение , где INT (N) означает INT с шириной отображения 4 десятичных разряда. Эта информация сохраняется в метаданных. Сам INT по-прежнему составляет 4 байта, а значения 10000 и более могут быть сохранены (и, возможно, отображены, но это зависит от того, как приложение использует набор результатов).
Ответ 2
Это зависит от механизма базы данных, к которому вы делаете запрос. MS SQL сервер, MySQL, SQLite и т.д.
Ответ 3
Это полностью зависит от используемого вами механизма базы данных. Но я считаю, что большинство двигателей считают типы INT/INTEGER 32-разрядными. Большинство движков позволят вам указать подпись.
Фактическое значение N указывает только число цифр. Таким образом, неподписанный INT (3) имеет диапазон 0-999.