2013-04-10 2 views
0

Столбцы Do null потребляют то же пространство на диске, что и при передаче по сети клиенту?Насколько широкий столбец null в таблице в базе данных PostgreSQL?

Насколько широк, в байтах, столбец null в таблице в базе данных PostgreSQL?

+0

[Поиск показывает больше связанных вопросов и атак.] (Http://stackoverflow.com/search?q= [postgresql] + null + пробел) –

ответ

1

Пропустили второй вопрос сначала:

Большинство клиентов взаимодействуют с сервером БД через текст. В зависимости от формата, который является либо строкой NULL, либо ничего (например, в формате COPY или текстовом формате pg_dump) вместо значения.
Это совершенно разные от того, как NULL значения хранятся в базе данных. (См. Дополнительные ссылки.)

+0

Вы случайно не знаете, если PostgreSQL Драйвер JDBC, в частности, взаимодействует с сервером в виде обычного текста? –

+2

http://www.postgresql.org/docs/9.2/static/protocol-message-formats.html описывает сообщения в проводном протоколе PostgreSQL. Сообщение «DataRow» объясняет, что столбцу «Null» присваивается размер -1 и имеет нулевые байты данных. –

+2

@DerekMahar Да, PgJDBC использует текстовый протокол. Он поддерживает некоторую поддержку двоичного протокола, но я не рекомендую использовать его ни для чего, кроме передачи множества значений 'bytea'. –

Смежные вопросы