<li id="34b3z"></li>
    <nav id="34b3z"></nav>
  1. <wbr id="34b3z"><legend id="34b3z"></legend></wbr>
    
    

        1. <form id="34b3z"></form>
          <sub id="34b3z"><table id="34b3z"><th id="34b3z"></th></table></sub>

          ?

          iOS培訓之數據保持(三)

          作者:達內 更新時間:2013-12-30 11:44 來源:未知 點擊:
          嵌入式SQLite3 需要先導入sqlite3 的 api 或 framework。 1 #define kFilename @data.sqlite3 2 3 - (void)viewDidLoad 4 { 5 [super viewDidLoad]; 6 sqlite3 *database; 7 if(sqlite3_open([[self dataFilePath] UTF8String]。
          嵌入式SQLite3
          需要先導入sqlite3 的 api 或 framework。
           1 #define kFilename @"data.sqlite3"
           2  
           3 - (void)viewDidLoad
           4 {
           5     [super viewDidLoad];
           6 sqlite3 *database;
           7     if(sqlite3_open([[self dataFilePath] UTF8String], &database)!=SQLITE_OK)
           8      {
           9          sqlite3_close(database);
          10          NSAssert(0, @"Failed to open database");
          11      }
          12     
          13     NSString *createSQL=@"CREATE TABLE IF NOT EXISTS FIELDS"
          14                             "(ROW INTEGER PRIMARY KEY , FIELD_DATA TEXT);";
          15     char *errorMsg;
          16     if(sqlite3_exec(database, [createSQL UTF8String], NULL, NULL, &errorMsg)!=SQLITE_OK)
          17        {
          18            sqlite3_close(database);
          19            NSAssert(0, @"Error creating table: %s",errorMsg);
          20        }
          21     NSString *query=@"SELECT ROW, FIELD_DATA FROM FIELDS ORDER BY ROW";
          22     sqlite3_stmt *statement;
          23     if(sqlite3_prepare_v2(database, [query UTF8String], -1, &statement, nil)==SQLITE_OK)
          24     {
          25         while (sqlite3_step(statement)==SQLITE_ROW)  //移動位置指針
          26        {
          27             int row=sqlite3_column_int(statement,0);
          28             char *rowData=(char *)sqlite3_column_text(statement, 1);
          29             
          30             NSString *fieldName=[[NSString alloc] initWithFormat:@"field%d",row];
          31             NSString *fieldValue=[[NSString alloc] initWithUTF8String:rowData];
          32             UITextField *field=[self valueForKey:fieldName];
          33             field.text=fieldValue;
          34         }
          35         sqlite3_finalize(statement);
          36     }
          37     sqlite3_close(database);
          38                         
          39     
          40     UIApplication *app =[UIApplication sharedApplication];
          41     [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationWillResignActive:) name:UIApplicationWillResignActiveNotification object:app];
          42 }
          43  
          44 -(void)applicationWillResignActive:(NSNotification *)notification;
          45 {
          46     sqlite3 *database;
          47     if(sqlite3_open([[self dataFilePath] UTF8String], &database)!=SQLITE_OK)
          48     {
          49         sqlite3_close(database);
          50         NSAssert(0, @"Failed to open database");
          51     }
          52     
          53     for (int i=1; i<=4; i++) {
          54         NSString *fieldName=[[NSString alloc] initWithFormat:@"field%d",i];
          55         UITextField *field=[self valueForKey:fieldName];
          56         
          57         char *updata="INSERT OR REPLACE INTO FIELDS (ROW, FIELD_DATA) VALUES(? , ?);";
          58         sqlite3_stmt *stmt;
          59         if (sqlite3_prepare_v2(database, updata, -1, &stmt, nil)==SQLITE_OK) {
          60             sqlite3_bind_int(stmt, 1, i);
          61             sqlite3_bind_text(stmt, 2, [field.text UTF8String],-1,NULL);
          62         }
          63         if(sqlite3_step(stmt)!=SQLITE_DONE)
          64         {
          65             NSAssert(0,@"Error updating table.");
          66         }
          67         sqlite3_finalize(stmt);
          68     }
          69     sqlite3_close(database);
          70 } 
          沙盒中的Documents文件夾生成data.sqlite3文件(未知直讀方法)。 
          學習有時就像剛才講述的知識一樣, 從開頭到最后都需要一個詳細的規劃過程,達內老師會為大家提供最優良的學習方法,為大家帶來不一樣的學習天地。 
          標簽:

          相關閱讀

          最新開班信息

          3G-IOS軟件工程師就業班
          北京潘家園中心 開課日期:9月29日
          3G-IOS軟件工程師就業班
          北京潘家園中心 開課日期:9月29日
          3G-IOS軟件工程師周末班
          北京潘家園中心 開課日期:9月29日
          3G-IOS軟件工程師周末班
          北京潘家園中心 開課日期:9月29日
          一本之道高清在线观看一区_高清在线不卡二区_最新国产高清不卡a 百度 好搜 搜狗
          <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>