美文网首页iOS 开发 iOS Developer
iOS本地数据库基于sqlite3的一些常规命令

iOS本地数据库基于sqlite3的一些常规命令

作者: 语歌 | 来源:发表于2016-05-24 23:50 被阅读8097次

1.添加库

#import<sqlite3.h>

2.打开数据库

NSString *homePath=NSHomeDirectory();

NSString *docpath=[homePathstringByAppendingPathComponent:@"Documents"];

NSString *fileName=[docpathstringByAppendingPathComponent:@"db.splite"];

sqlite3 *db;

执行:

if(sqlite3_open([fileNameUTF8String], &db) !=SQLITE_OK)

{//SQLITE_OK值是0

NSLog(@"打开数据库失败");

return;

}

3.数据库里面一些类型

//intger 整形

//real代表双精度

//text代表字符串

//blob代表图片

4.在数据库中创建表

char * sql="create table if not exists t_user(username text primary key

not null,password text not null)";//如果不存在表就创建表t_user

执行:

if(sqlite3_exec(db,sql, NULL, NULL, &error)!=SQLITE_OK)

{

NSLog(@"创建失败!(%s)",error);

}

5.增加数据

sql="insert into t_user(username,password) values('123','123')";

if(sqlite3_exec(db,[sql UTF8String], NULL, NULL, &error)!=SQLITE_OK)

{

NSLog(@"插入数据失败!(%s)",error);

}

6.修改数据

sql="update t_user set password='999' where username='123'";

if(sqlite3_exec(db,sql, NULL, NULL, &error)!=SQLITE_OK)

{

NSLog(@"修改数据失败!(%s)",error);

}

7.删除数据

sql="delete from t_user where username='123'";

if(sqlite3_exec(db, sql, NULL, NULL,&error)!=SQLITE_OK)

{

NSLog(@"删除数据失败!(%s)",error);

}

8.查询数据

sql="select * from t_user where username='098'";

sqlite3_stmt *stmt;

if(sqlite3_prepare_v2(db, sql, -1,&stmt, NULL)==SQLITE_OK)

{ //遍历

while(sqlite3_step(stmt)==SQLITE_ROW)//得到一行

{//const不能改该后都变了

const unsigned char *name=sqlite3_column_text(stmt, 0);

const unsigned char *pass=sqlite3_column_text(stmt,1);

NSLog(@"username=%s,password=%s",name,pass);

}

9.申请的内存需要关闭

sqlite3_finalize(stmt);

10.关闭数据

sqlite3_close(db);

//需要demo可以留言^_^

相关文章

网友评论

    本文标题:iOS本地数据库基于sqlite3的一些常规命令

    本文链接:https://www.haomeiwen.com/subject/yoazrttx.html