Есть ли хорошее приложение для управления базой данных SQLite 3 с типом данных BLOB? - PullRequest
0 голосов
/ 03 декабря 2009

Я хочу создать базу данных и управлять ей с помощью изображений и / или аудиоклипов. Я знаю, что это не лучшая идея, и я знаю, что есть лучшие варианты, но это самый простой способ отделить данные от программирования, и я не тот, кто пишет код. Поэтому мне нужно приложение, которое позволит мне редактировать базу данных, которую вызывает приложение, а приложение должно вызывать случайный аудиофайл или файл изображения. Мне просто нужно знать редактор SQL.

Ответы [ 2 ]

0 голосов
/ 04 декабря 2009

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

Вместо этого рассмотрим этот подход - как предложил Алекс, работать с отдельными файлами и строками, которые представляют имена файлов. Вы можете поместить и базу данных, и файлы в один каталог, который ваш кодер хранит как ссылку на папку в XCode, так что все содержимое в папке, которую вы изменяете, автоматически добавляется в проект кодирования. Обратите внимание, что если вы измените какой-либо существующий файл, из-за ошибки в XCode ему потребуется выполнить чистую сборку перед повторной сборкой, иначе он не будет копировать измененные ресурсы (в основном это проблема для БД).

Тогда вы можете легко использовать любой клиент SQLLite для ведения базы данных имен файлов и других данных. «База» - отличное автономное приложение.

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

0 голосов
/ 03 декабря 2009

Вместо этого вы можете использовать Базовые данные . По умолчанию используется бэкэнд SQLite. Вместо использования больших двоичных объектов вы можете просто сохранить NSString*, который является путем к объекту, в папке «Документы» приложения. Если вы хотите извлечь сохраненное изображение или другой большой двоичный объект данных, вы можете загрузить экземпляр NSData* непосредственно из значения пути. Хранение больших файлов вне базы данных даст вам гораздо лучшую производительность.

...