Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2010, 20:34   #1
nickel-j
Пользователь
 
Регистрация: 15.05.2010
Сообщений: 28
По умолчанию char и varchar - различия в размерах

Здравствуйте. Чем отличаются эти типы мне известно. Непонятно следующее - у меня есть 2 базы данных, в каждой по 1000 записей с единственным полем строкового типа - в одной char, в другой varchar. С помощью процедуры автозаполнения строки забиваются буквенной информацией длиной от 1 до 255 символов (значения строк в базах совпадают целиком). Но почему база с char весит 692 КБ, а с varchar - 392?
Понятно, что varchar не забивает оставшееся место пробелами, но разве оно не резервируется? Разве размер записи не фиксирован?
nickel-j вне форума Ответить с цитированием
Старый 03.06.2010, 22:57   #2
Teslenko_EA
Участник клуба
 
Регистрация: 10.08.2009
Сообщений: 1,796
По умолчанию

Здравствуйте nickel-j.
"..Чем отличаются эти типы мне известно.." - судя по вопросу, не совсем.
char заполняет весь размер поля пробелами, а они имеют "вес" в отличии от запланированного но не заполненного размера поля с типом данных varchar.
Термин "резервируется" в данном случае не совсем понятен
Евгений.
Teslenko_EA вне форума Ответить с цитированием
Старый 03.06.2010, 23:30   #3
nickel-j
Пользователь
 
Регистрация: 15.05.2010
Сообщений: 28
По умолчанию

Спасибо))
Резервируется - такой пример - запись varchar(100), фактическая длина - 5+1 байт, и 94 байта - это "адрес", я предполагаю что они не используются - или это не важно?
nickel-j вне форума Ответить с цитированием
Старый 03.06.2010, 23:48   #4
nickel-j
Пользователь
 
Регистрация: 15.05.2010
Сообщений: 28
По умолчанию

Всмысле выделяемое пространство нельзя больше использовать - разве оно не вкладывается каким-то образом в размер базы?
nickel-j вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка cannot convert from 'char *' to 'char [100]' Stellvertreter Общие вопросы C/C++ 5 30.05.2010 00:02
Varchar и numeric АлёнаP SQL, базы данных 2 15.01.2010 08:58
Как изменить в InterBase размер поля varchar(10) на varchar(20) tarakan1983 БД в Delphi 4 23.03.2009 15:35
varchar to blob in phpmyadmin Alar SQL, базы данных 0 11.01.2009 07:14
Есть таблица - В ней три поля int, char, char нужно чтобы данные заносились в таблицу Mysql Muahahaha PHP 8 27.03.2008 11:17