最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

iOS中sqlite的詳細用法

 更新時間:2016年05月05日 09:42:35   作者:甘超波  
在iOS中,也同樣支持sqlite。目前有很多第三方庫,封裝了sqlite操作,比如swift語言寫的SQLite.swift,對sqlite感興趣的小伙伴們可以參考一下

本文實例為大家分享了ios中sqlite的具體操作方法,供大家參考,具體內(nèi)容如下

#import <sqlite3.h>

@interface ViewController ()
{
 sqlite3 *_sqldb;
}

@end

@implementation ViewController

- (void)viewDidLoad
{
 [super viewDidLoad];
 // Do any additional setup after loading the view, typically from a nib.
 [self OpenDb];
 [self createTable];
 [self insertData];
 [self FindData];
}


//打開數(shù)據(jù)庫

-(void)OpenDb{
 
 NSArray *arrs= NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
 //創(chuàng)建數(shù)據(jù)庫,如果數(shù)據(jù)庫存在就直接打開,不存在就創(chuàng)建打開
 NSString *path=[arrs lastObject] ;
 NSString *documentpath= [path stringByAppendingPathComponent:@"sql.db"];
 int reslut= sqlite3_open([documentpath UTF8String], &_sqldb);
 if(reslut==SQLITE_OK){
 NSLog(@"數(shù)據(jù)庫已被打開");
 }
 
}
//通過數(shù)據(jù)庫實例創(chuàng)建表
-(void)createTable{
 //不帶參數(shù)的sql語句
 const char* sql="create table if not exists t_person (id integer primary key autoincrement,name text,age integer);";
 char *error;
 //sqlite3_exec可以執(zhí)行一切不帶參數(shù)的SQL語句。如果是帶參數(shù)最好不用,防止SQL注入漏洞攻擊
 int resutl= sqlite3_exec(_sqldb, sql, NULL, NULL, &error);
 if(resutl==SQLITE_OK){
 NSLog(@"創(chuàng)建表成功");
 }
else{
 NSLog(@"創(chuàng)建表失?。?s",error);
}
}

//插入數(shù)據(jù)
-(void)insertData{
 //帶參數(shù)的SQL語句 "?"是帶參數(shù)的占位符
 const char * sql="insert into t_person(name,age) values(?,?);";
 sqlite3_stmt *stmp;
 //在執(zhí)行SQL語句之前檢查SQL語句語法,-1代表字符串的長度
 int result= sqlite3_prepare_v2(_sqldb, sql, -1, &stmp, NULL);
 if(result==SQLITE_OK){
 NSLog(@"插入SQL語句語法沒有問題");
 //綁定參數(shù),插入的參數(shù)的下標是從1開始
 sqlite3_bind_text(stmp, 1, "gcb", -1, NULL);
 sqlite3_bind_int(stmp, 2, 12);
 
 //執(zhí)行參參數(shù)的SQL語句,不能有exec
 int result=sqlite3_step(stmp);
 //插入進行判斷,要用sqLite_Done來判斷
 if(result==SQLITE_DONE){
  NSLog(@"插入成功");
 }
 else{
  NSLog(@"插入失敗") ;
 }
 
 }
 else{
 NSLog(@"插入SQL語句有問題");
 }
}

-(void)FindData{
 char *sql="select id,name,age from t_person";
 //查詢做好用step執(zhí)行
 sqlite3_stmt *stmt;
 //檢查SQL語句的語法問題
 int result= sqlite3_prepare_v2(_sqldb, sql, -1, &stmt, NULL);
 if(result==SQLITE_OK){
 while (sqlite3_step(stmt)==SQLITE_ROW) {
  //查詢的列是0開始 插入的列從1開始
//  int xh=sqlite3_column_int(stmt, 0);
  int xh=sqlite3_column_int(stmt, 0);
  char * name=(char *)sqlite3_column_text(stmt, 1);
  int age=sqlite3_column_int(stmt, 2);
  NSLog(@"xh=%i-->name=%s-->age=%i",xh,name,age);
  
  
  
 }
 }
 else{
 NSLog(@"查詢SQL語法有誤");
 }

}

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助。

相關(guān)文章

  • IOS利用CocoaHttpServer搭建手機本地服務(wù)器

    IOS利用CocoaHttpServer搭建手機本地服務(wù)器

    這篇文章主要介紹了IOS利用CocoaHttpServer搭建手機本地服務(wù)器的步驟,幫助大家更好的理解和學習使用ios開發(fā),感興趣的朋友可以了解下
    2021-04-04
  • 使用Swift代碼實現(xiàn)iOS手勢解鎖、指紋解鎖實例詳解

    使用Swift代碼實現(xiàn)iOS手勢解鎖、指紋解鎖實例詳解

    這篇文章主要介紹了使用Swift代碼實現(xiàn)iOS手勢解鎖、指紋解鎖的實現(xiàn)過程,非常不錯具有參考借鑒價值,感興趣的朋友一起看看吧
    2016-06-06
  • iOS體驗性優(yōu)化之RTL適配右滑返回的實現(xiàn)

    iOS體驗性優(yōu)化之RTL適配右滑返回的實現(xiàn)

    這篇文章主要給大家介紹了關(guān)于iOS體驗性優(yōu)化之RTL適配右滑返回實現(xiàn)的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2018-01-01
  • iOS之基于FreeStreamer的簡單音樂播放器示例

    iOS之基于FreeStreamer的簡單音樂播放器示例

    這篇文章主要介紹了iOS之基于FreeStreamer的簡單音樂播放器示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11
  • IOS LaunchScreen設(shè)置啟動圖片與啟動頁停留時間詳解

    IOS LaunchScreen設(shè)置啟動圖片與啟動頁停留時間詳解

    這篇文章主要介紹了IOS LaunchScreen設(shè)置啟動圖片與啟動頁停留時間詳解的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • IOS中多手勢之間的沖突和解決辦法

    IOS中多手勢之間的沖突和解決辦法

    這篇文章主要介紹了IOS中多手勢之間的沖突和解決辦法的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • 阿里數(shù)據(jù)iOS端啟動速度優(yōu)化心得

    阿里數(shù)據(jù)iOS端啟動速度優(yōu)化心得

    本篇文章給大家詳細分析了阿里數(shù)據(jù)iOS端啟動速度優(yōu)化的知識點以及心得,對此有興趣的朋友參考學習下吧。
    2018-02-02
  • IOS客戶端接入微信支付

    IOS客戶端接入微信支付

    對于一個ios的app,如果有一些虛擬的商品或者服務(wù)需要通過在線支付來收費的話,一般有幾種主流的選擇。如果是通過APP調(diào)用支付平臺APP的思路的話,一個是調(diào)起支付寶客戶端,一個則是調(diào)起微信支付。本文給大家分享ios客戶端接入微信支付,需要的朋友可以參考下
    2015-09-09
  • iOS中的實時遠程配置全紀錄

    iOS中的實時遠程配置全紀錄

    這篇文章主要給大家介紹了關(guān)于iOS中實時遠程配置的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對各位iOS開發(fā)者們具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-01-01
  • 如何在自己的電腦上配置APNS推送環(huán)境

    如何在自己的電腦上配置APNS推送環(huán)境

    這篇文章主要介紹了如何在自己的電腦上配置APNS推送環(huán)境的相關(guān)資料,需要的朋友可以參考下
    2015-11-11

最新評論

商河县| 镇原县| 鲜城| 泰来县| 青海省| 固阳县| 射阳县| 连云港市| 盐源县| 乐至县| 建宁县| 凉城县| 康定县| 灯塔市| 儋州市| 鄂伦春自治旗| 乐至县| 平定县| 桦南县| 斗六市| 神农架林区| 黄陵县| 伊金霍洛旗| 长白| 潜江市| 保山市| 大关县| 东方市| 顺昌县| 井冈山市| 汶上县| 潜江市| 苏尼特右旗| 集安市| 化德县| 惠州市| 赣榆县| 河间市| 平凉市| 乌拉特中旗| 辽宁省|