| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Базы данных > какой тип колонки выбрать? |
| Автор: boostcoder 30.1.2011, 18:00 |
| всем привет. нужно в таблице, в одной из колонок, хранить имя файла. файлов может быть очень много. длина имени ничем не ограничивается. выборка имени будет происходить по sha1 сумме. какой тип колонки выбрать для хранения имени файла: text, varchar ? спасибо. |
| Автор: borisbn 30.1.2011, 21:57 |
| boostcoder, ничего не забыл ? какая СУБД ? |
| Автор: boostcoder 30.1.2011, 21:59 |
ы) mysql. |
| Автор: null56 30.1.2011, 22:54 | ||
| CHAR/VARCHAR - максимальный размер 255 если хочешь больше, то смотри в сторону TEXT/BLOB подробности ниже http://www.mysql.ru/docs/mysql-man-4.0-ru/reference.html#string-types хочу добавить, что ключевым отличием является
и еще, бинарный тип blob может хранить абсолютно любые комбинации байтов, а в тексте неудачное сочетание байтов может скомбинировать символ конца строки и тогда селектом уже всю строку не вытащишь |
| Автор: borisbn 31.1.2011, 10:03 |
| Честно говоря, не знаю как у "мускулистых" ребят, но в других СУБД поиск по blob если не невозможен, то несколько затруднён. Также проблемотично будет построить индекс по blob. Хотя... т.к. и если эту сумму считать при записи в базу и сохранять там же в базе, то можно и blob использовать |
| Автор: boostcoder 1.2.2011, 15:54 |
| значит TEXT не подходит, а VARCHAR размером более 1024 будет дико тормозить. всем спасибо. вопрос закрыт. |