-1
SQLite DB를 사용하는 iOS 앱을 만들고 있습니다. 나는대로 표를 만들었습니다NSCocoaErrorDomain NSDATA에서 NSDATA를 가져 오는 동안 Code = 3840 문제가 발생했습니다.
const char *sql_stmt = "CREATE TABLE IF NOT EXISTS ORDERTABLE (ID INTEGER PRIMARY KEY AUTOINCREMENT, ITEMDESC BLOB)";
후 나는 같은 삽입하고 ItemDESC 에 self.selectedItemsDictnory 사전을 삽입해야합니다 : 성공적으로 수행이 최대 개까지
NSData *data = [NSJSONSerialization dataWithJSONObject:self.selectedItemsDictnory options:NSJSONWritingPrettyPrinted error:nil];
NSString *insertSQL = [NSString stringWithFormat: @"INSERT INTO ORDERTABLE(ITEMDESC)VALUES(\"%@\");",data];
.
지금 내가
내가 뭐하는 거지 것은 같은 형식이 사전을 검색 할 수 있습니다
if (sqlite3_prepare_v2(orderDB, sqlStatement, -1, &statement, NULL) == SQLITE_OK) {
while (sqlite3_step(statement) == SQLITE_ROW) {
int uniqueId = sqlite3_column_int(statement, 0);
const void *blob = sqlite3_column_blob(statement, 1);
NSInteger bytes = sqlite3_column_bytes(statement, 1);
NSData *data = [NSData dataWithBytes:blob length:bytes];
NSError *error;
NSMutableString *jsonObject=[NSJSONSerialization
JSONObjectWithData:data
options:NSJSONReadingMutableLeaves
error:&error];
NSLog(@"jsonObject is %@ with error %@",jsonObject, error);
}
sqlite3_finalize(statement);
sqlite3_close(orderDB);
}
그리고 난 = 3840
오류 도메인 = NSCocoaErrorDomain 코드로 오류를 얻고있다 "작업을 완료 할 수 없습니다 (코코아 오류 3840.)"(JSON 텍스트 배열 또는 개체 및 옵션을 조각을 설정할 수 있도록 시작되지 않았습니다.)
: 당신이 문자열을 원하는 경우
이에서 : 당신은하지만 아래, 데이터 덩어리가 아닌 문자열이 이제
, 당신은 문자열로 처리 그리고 내가 삽입하는 내 NSDictionary는 예 : po self.selectedItemsDictnory $ 1 = 0x07184170 { 빛 = 50; 파스타 = 220; } 이 오류를 검색하려고했습니다. 내가 검색하는 JSON은 JSON 형식이 아님을 알게되었습니다. 입력 사항을 제공해주십시오. 감사합니다. – Sulabh