![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
InterBase и NULL поля [D6, IB6.x]
sndanil © (2003-02-01 12:43:00)Насколько я понимаю если при добавлении записи в таблицу указываюся не все поля то IB/FB физически не выделяет для неуказанных полей место в файле ... вопрос тогда в следующем ... прав ли я и сказывается ли это на быстодействии или лучше перенести редко используемые поля в отдельную таблицу ? ... заранее спасибо ...
Sergey Masloff (2003-02-01 16:20:00) [1]sndanil © (01.02.03 15:27)
>2Sergey Masloff
>как раз такое и получается если строка одинаковые то вместо >20Гб ты получишь где-то 20метров ...
Ну я Гб вместо Мб написал... ;-)
sndanil (2003-02-01 15:30:00) [2]да на самом деле не о строках речь, а о типах данных вроде целых чисел ...
sndanil (2003-02-01 15:27:00) [3]2Sergey Masloff
как раз такое и получается если строка одинаковые то вместо 20Гб ты получишь где-то 20метров ...
kaif (2003-02-01 14:49:00) [4]В руководстве по IB написано, что все строки (char и varchar) хранятся без концевых пробелов. При select-е строки "добиваются" концевыми пробелами. Таким образом, пустые строки в базе места не занимают практически никакого.
Sergey Masloff (2003-02-01 14:38:00) [5]sndanil ©
>т.е. если я добавлю например в таблицу 20000 строк ...
Специально не интересовался но думаю что строки до 255 символов и более длинные хранятся по-разному. То есть если 200000 строк по 102 символа то искомые 20 Гб и получишь. Хотя это только предположение, специально я этим вопросом не интересовался
sndanil (2003-02-01 13:12:00) [6]2Sergey Masloff
ну у него же существует упаковка записей ... т.е. если я добавлю например в таблицу 20000 строк длинной по 1024 то база реально не будет 20 метром ... она будет раза в два меньше ...
Sergey Masloff (2003-02-01 13:00:00) [7]Это blob-поля? Тогда не выделяет (ну только место под указатель). Если, скажем, Integer то ясно дело выделяет.