0
필기 정보 용 UITextView가 있습니다. 메모를 작성한 후 완료 버튼 텍스트가 데이터베이스에 저장됩니다. 이전 텍스트에서 계속해서 텍스트를 추가 한 다음 완료 버튼을 클릭하면 새 텍스트 행이 저장됩니다.텍스트를 iOS의 데이터베이스에 저장하는 방법
테이블 :
texts texts_id
Hi 1
Hi, How are u? 1
우선 내가 안녕 텍스트를 작성하고 완료를 클릭합니다. 그런 다음 데이터베이스에서 텍스트를 쿼리하고 어떻게 작성 했습니까? 그러나 그것은 새로운 행을 저장합니까? 안녕하세요. 첫 번째 행을 Hi로 대체해야합니다. 어떻게 지내십니까? 가능한가?
if (sqlite3_open([path UTF8String], &database) == SQLITE_OK) {
const char *sql = [[NSString stringWithFormat:@"SELECT textnotes FROM textnote where textnote = '%@','%@',",txtview.text,artID] cStringUsingEncoding:NSUTF8StringEncoding];
NSLog(@"sql is %s",sql);
BOOL favExist = false;
sqlite3_stmt *statement, *addStmt;
if (sqlite3_prepare_v2(database, sql, -1, &statement, NULL) == SQLITE_OK) {
// We "step" through the results - once for each row.
while (sqlite3_step(statement) == SQLITE_ROW) {
favExist = true;
}
}
if(!favExist){
const char *sqlInsert = [[NSString stringWithFormat:@"insert into textnote (textnotes,text_id) values ('%@','%@')", txtview.text,artID] cStringUsingEncoding:NSUTF8StringEncoding];
NSLog(@"sql insert is %s",sqlInsert);
// [catID release];
if(sqlite3_prepare_v2(database, sqlInsert, -1, &addStmt, NULL) != SQLITE_OK)
NSAssert1(0, @"Error while creating add statement. '%s'", sqlite3_errmsg(database));
if(SQLITE_DONE != sqlite3_step(addStmt))
NSAssert1(0, @"Error while inserting data. '%s'", sqlite3_errmsg(database));
}