В Android SQLite, когда количество столбцов больше, размер базы данных с теми же данными выше - PullRequest
0 голосов
/ 14 января 2020

В приложении Android,

Конфигурация 1:

Существует SQLite с 3 столбцами, как указано ниже:
Столбец1 . Конфигурация 2:

Теперь, если я назначу отдельные столбцы для Image4 для Image10, тогда будет 10 столбцов с теми же данными

Вопрос:

Размер базы данных Конфигурация 2 будет больше, чем размер базы данных Конфигурация 1

Когда количество строк в базе данных больше, чем разница между размерами, больше и значительнее

Почему?

1 Ответ

1 голос
/ 14 января 2020

Это слишком долго для комментария.

1) Хранение списков с разделителями в реляционной базе данных почти всегда очень плохая идея

2) Объединение значений по столбцам чуть лучше; в основном, это имеет смысл, если и только если количество изображений на пользователя действительно действительно фиксировано , как у каждого пользователя ровно 10 изображений. В противном случае вы получите пустые значения здесь и там; и если вам когда-либо понадобится обрабатывать более 10 изображений на пользователя, то вам нужно изменить структуру вашей базы данных, а это не то, что вам нужно

3) Я бы настоятельно рекомендовал иметь отдельную таблицу для хранения изображения каждого пользователя в строках (не в столбцах), с иностранным, который ссылается на соответствующего пользователя в исходной таблице; это нормализованный дизайн для отношения 1-N, который является гораздо более гибким, простым в обслуживании и запрашивает

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...