Поля varchar - Действительно ли Питание Два Более эффективно?

Модуль bar действительно определяет имя datetime. Оператор

import datetime

создает переменную уровня модуля datetime в модуле bar и связывает переменную с модулем datetime. import * подбирает это имя так же, как оно подбирает другие имена.

import * не волнует, где объекты были созданы. Неважно, что сам модуль datetime взят из какого-то другого файла. Имя datetime существует в bar, поэтому имя импортируется.

51
задан Nikolay Kostov 17 October 2017 в 21:08
поделиться

5 ответов

В некотором другом использовании, существуют некоторые преимущества для использования структур с питанием двух размеров, главным образом потому что можно соответствовать хорошему (питание два) количество их в другой power-of-two-sized структуре. Но это не относится к размеру поля DB.

единственный power-of-two-sizing, связанный с VARCHARs, о точном типе varchar (или ТЕКСТ/BLOB на некоторых диалектах SQL): если это - меньше чем 256, это может использовать единственный байт для указания на длину. если это - меньше чем 65 536 (64 КБ), два байта достаточно, трехбайтовая работа до 16 777 216 (16 МБ), четырехбайтовое движение к 4294967296 (4 ГБ).

кроме того, можно утверждать, что VARCHAR(50) является столь же дорогим как VARCHAR(255), так как обоим будут нужны n+1 байты устройства хранения данных.

, Конечно, это прежде думает о Unicode...

51
ответ дан Nikolay Kostov 7 November 2019 в 10:11
поделиться

Я всегда думал, что люди выбирают полномочия два для varchar полей, потому что мы - фанаты, и это - то, что мы делаем. По крайней мере это - то, что я всегда делал.

29
ответ дан Paul Tomblin 7 November 2019 в 10:11
поделиться

Единственное материальное преимущество, которое Вы будете видеть от использования определенных максимальных длин, является пространством памяти, требуемым для VARCHAR. Максимальная длина более чем 255 потребовали бы, чтобы дополнительный байт сохранил длину значения в каждой строке (и дополнительные 2 байта для длин 256^2 или больше и так далее).

4
ответ дан Alex Barrett 7 November 2019 в 10:11
поделиться

Для SQL в целом? Нет. Для определенной реализации, возможно.

то, Что более эффективно, не определяется спецификацией (SQL является просто спецификацией), но как он реализован в определенном DBMS.

4
ответ дан Juliano 7 November 2019 в 10:11
поделиться

Это зависит от определенной реализации базы данных, но я не ожидал бы это к. Это не выполняет вычислений на количестве символов, обычно, таким образом, это не должно влиять на производительность - только располагают с интервалами.

0
ответ дан johnnyRose 7 November 2019 в 10:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: