ブロブを sqlite db に挿入する際に問題が発生しました。私はiosで作業しているので、objective-cです。
計画:
ボタンを押すと、フォト ピッカーが開き、写真を選択し、別のボタンに触れると、写真が blob としてデータベースに保存されます。
挿入するだけですべてが正常に機能しています。私はすでに int と文字列をデータベースに挿入しており、正常に動作しますが、ブロブは私を夢中にさせます。
使用しているコード:
私はそれにすべてのdbメソッドを持っているクラスを手に入れました。db と呼ばれます。そして、db-objectを使用するクラスを取得しました。
DBクラス:
-(void)insertblob:(NSData *)blob stmt:(NSString *)blobStmnt {
const char *sql = [blobStmnt UTF8String];
sqlite3_prepare_v2(database, sql, 1, &statement, NULL);
if (SQLITE_DONE != sqlite3_step(statement)) {
NSLog(@"Error while inserting data. '%s'", sqlite3_errmsg(database));
}
sqlite3_bind_blob(statement, 1, [blob bytes], [blob length], SQLITE_TRANSIENT);
}
使用クラス:
[database openDB:@"Content"]
updateStmt = [NSString stringWithFormat:@"UPDATE Face SET image =%@", image];
[database insertblob:imageData stmt:updateStmt];
[database closeDB];
それで、私は何が欠けていますか?更新ステートメントから「U」で挿入がすでに失敗しているというエラーが表示されます。しかし、私は本当に何を変えなければならないのか分かりません。
よろしくお願いします。