Загрузить видео в SQLite - PullRequest
       2

Загрузить видео в SQLite

1 голос
/ 23 октября 2010

Можно ли загрузить видео в базу данных SQLite (а не только в URL)? Я попробовал это, но не нашел успеха; если кто-то знает решение, пожалуйста, напишите ответ.

Ответы [ 4 ]

2 голосов
/ 23 октября 2010

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

И всякий раз, когда вы хотите получить доступ к видео, вы можете легко сделать это, запросив имя файла.

Поскольку SQLITE - это легковесная база данных, поэтому не рекомендуется добавлять к ней большую нагрузку.

0 голосов
/ 16 декабря 2010
NSData *imgData;
imgData = [[NSData alloc] initWithContentsOfURL:
                  [NSURL URLWithString:[aDict objectForKey:@"Icon"]]];
if (sqlite3_prepare_v2(database, sqlStatement1, -1, 
                       &compiledStatement1, NULL) == SQLITE_OK) 
{
    sqlite3_bind_blob(compiledStatement1, 1, [imgData bytes], 
                      [imgData length], SQLITE_TRANSIENT);
}

if ([[aDict objectForKey:@"Icon"] length] > 0)
{
    [imgData release];
}
0 голосов
/ 23 октября 2010

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

0 голосов
/ 23 октября 2010

Звучит как плохая идея хранить большие файлы в базе данных SQL, особенно SQLite. Если вам действительно нужно это сделать, обязательно используйте столбец BLOB и правильно экранируйте свои данные.

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