iPhone開(kāi)發(fā)之Ssqlite3數(shù)據(jù)庫(kù)操作
iPhone開(kāi)發(fā)之Ssqlite3數(shù)據(jù)庫(kù)操作是本文要介紹的內(nèi)容,下面是對(duì)sqlite3數(shù)據(jù)庫(kù)的操作,首先是要倒入類(lèi),最基本的,但不要忘記。我對(duì)數(shù)據(jù)庫(kù)的操作進(jìn)行了單獨(dú)的處理,自己看著比較舒服,也好明白,需要用到時(shí),直接調(diào)用久好了,也可以有代理,一直沒(méi)研究,日后好好看看,先總結(jié)這些,方便自己查看,忘記時(shí)找找,老不用會(huì)很快忘記,方便自己吧!
- #import
- #define kFilename @"data.sqlite3"
1、打開(kāi)數(shù)據(jù)庫(kù)操作
- -(void)openDB {
- NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
- NSString *documentsDirectory = [paths objectAtIndex:0];
- NSString *dataFilePath = [documentsDirectory stringByAppendingPathComponent:kFilename];
- if (sqlite3_open([dataFilePath UTF8String], &database) != SQLITE_OK) {
- sqlite3_close(database);
- }
2、創(chuàng)建表,結(jié)構(gòu),類(lèi)型
- - (void)initDB {
- char *errorMsg;
- NSString *sql = @"CREATE TABLE IF NOT EXISTS USER (USER_ID INTEGER PRIMARY KEY,USERNAME TEXT,PASSWORD TEXT);";
- if (sqlite3_exec(database, [sql UTF8String], NULL, NULL, &errorMsg) != SQLITE_OK) {
- sqlite3_close(database);
- }
- }
3、執(zhí)行添加方法
- - (void)insertUsername:(NSString *)username insertPassword:(NSString *)password {
- [self openDB];//調(diào)用打開(kāi)庫(kù)
- [self initDB];//調(diào)用創(chuàng)建表
- char *errorMsg;
- char *update = "INSERT OR REPLACE INTO USER (USERNAME,PASSWORD) VALUES (?,?);";//添加語(yǔ)句
- NSString *sql = [NSString stringWithFormat:@"SELECT USERNAME,PASSWORD FROM USER"];//查詢(xún)語(yǔ)句
- sql = @"DELETE FROM USER;";//刪除語(yǔ)句
- sqlite3_stmt *statement;
- if (sqlite3_prepare_v2(database, update, -1, &statement, nil) == SQLITE_OK) {
- sqlite3_bind_text(statement, 1, [username UTF8String], -1, SQLITE_TRANSIENT);
- sqlite3_bind_text(statement, 2, [password UTF8String], -1, SQLITE_TRANSIENT);
- }
- if (sqlite3_step(statement) != SQLITE_DONE)
- NSAssert1(0,@"Error updating table:%s",errorMsg);
- sqlite3_finalize(statement);
- sqlite3_close(database);
小結(jié):iPhone開(kāi)發(fā)之Ssqlite3數(shù)據(jù)庫(kù)操作的內(nèi)容介紹完了,希望本文對(duì)你有所幫助。