自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

詳解iPhone連接Sqlite數(shù)據(jù)庫 實例操作

移動開發(fā) iOS
本文介紹的是詳解iPhone連接Sqlite數(shù)據(jù)庫 實例操作,數(shù)據(jù)庫的操作很重要,先來看本文內(nèi)容。

詳解iPhone連接Sqlite數(shù)據(jù)庫 實例操作是本文要介紹的內(nèi)容,主要是以代碼實現(xiàn),來講述了一些iPhone連接Sqlite數(shù)據(jù)庫的代碼,來看詳細內(nèi)容。

相信在N多應(yīng)用中要涉及數(shù)據(jù)庫操作

  1. sqlite3 *database;  
  2. NSArray *pathsNSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);  
  3. NSString *documentsDirectory = [paths objectAtIndex:0];  
  4. NSString *strPaths =  [documentsDirectory stringByAppendingPathComponent:kFilename];  
  5. if (sqlite3_open([strPaths UTF8String], &database) != SQLITE_OK) {  
  6.         sqlite3_close(database);  
  7.         NSAssert(0, @"Failed to open databse");  
  8.     }  
  9. NSString *createSQL = @"CREATE TABLE IF NOT EXISTS FIELDS (ROW INTEGER PRIMARY KEY, FIELD_DATA TEXT)";  
  10. if(sqlite3_exec(database, [createSQL UTF8String], NULL, NULL, &errorMsg) != SQLITE_OK){  
  11.         sqlite3_close(database);  
  12.         NSAssert1(1, @"Error create table :%s", errorMsg);  
  13.     }  
  14. NSString *query = @"SELECT ROW ,FIELD_DATA FROM FIELDS ORDER BY ROW";  
  15. sqlite3_stmt *statement;  
  16.  
  17. if(sqlite3_prepare_v2(database, [query UTF8String], -1, &statement, nil) == SQLITE_OK){  
  18.         while (sqlite3_step(statement) == SQLITE_ROW) {  
  19.             int row = sqlite3_column_int(statement, 0);  
  20.             char *rowData = (char *)sqlite3_column_text(statement, 1);  
  21.               
  22.             NSString *fieldName = [[NSString alloc] initWithFormat:@"field%d", row];  
  23.             NSString *fieldValue = [[NSString alloc] initWithUTF8String:rowData];  
  24.               
  25.             UITextField *field = [self valueForKey:fieldName];  
  26.             field.text = fieldValue;  
  27.             [fieldName release];  
  28.             //[fieldName release];  
  29.             [fieldValue release];  
  30.         }  
  31.           
  32.         sqlite3_finalize (statement);  
  33.     } 

sqllite存在沙盒內(nèi),所以打開的時候不需要name和password,但由于字符的格式不用,所以需要通過,[nsString, UTF8String]來轉(zhuǎn)換。

  1. sqlite3_prepare_v2(database, [query UTF8String], -1, &statement, nil),這是執(zhí)行sql語句的命令。statement記錄狀態(tài)。  
  2.  
  3. sqlite3_column_*(statement, 0);返回字段值  
  4.  
  5. sqlite3_finalize (statement);結(jié)束退出 

小結(jié):詳解iPhone連接Sqlite數(shù)據(jù)庫 實例操作的內(nèi)容介紹完了,希望本文對你有所幫助!

責任編輯:zhaolei 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2011-07-07 16:42:38

iPhone Sqlite3 數(shù)據(jù)庫

2011-07-05 10:16:16

Qt 數(shù)據(jù)庫 SQLite

2011-07-21 17:29:42

iPhone Sqlite 數(shù)據(jù)庫

2011-07-27 10:16:41

iPhone SQLite 數(shù)據(jù)庫

2011-07-05 14:46:34

2011-08-02 16:16:08

iPhone開發(fā) SQLite 數(shù)據(jù)庫

2011-07-20 12:34:49

SQLite數(shù)據(jù)庫約束

2017-07-12 09:20:42

SQLite數(shù)據(jù)庫移植

2011-07-04 17:18:23

Qt SQLite 數(shù)據(jù)庫

2009-12-31 11:10:01

2011-07-01 14:06:57

Qt sqlite

2010-03-04 15:31:44

Python SQLI

2011-05-19 13:25:14

Oracle數(shù)據(jù)庫

2010-04-01 09:45:38

NoSQL

2010-11-29 11:47:26

連接Sybase數(shù)據(jù)庫

2011-06-21 15:11:04

QT 數(shù)據(jù)庫

2024-03-07 13:02:57

PythonSQLite數(shù)據(jù)庫

2011-07-12 15:22:04

SQLite數(shù)據(jù)庫

2024-04-03 00:06:03

2011-07-06 16:25:10

iPhone 程序 調(diào)用
點贊
收藏

51CTO技術(shù)棧公眾號