加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Database—Sqlite3.0

发布时间:2020-12-12 19:48:14 所属栏目:百科 来源:网络整理
导读:#warning 第一步 引入 sqlite 数据库头文件 #import sqlite3.h 第二步 加入 libsqlite3.0.dylib 库文件 第三步 创建数据库对象 static sqlite3 *db = nil ; 第四步 打开数据库 - ( void )openDB { if ( db != nil ) { NSLog ( @" 数据库已经打开 " ); return
#warning第一步引入sqlite数据库头文件 #import<sqlite3.h>
第二步加入libsqlite3.0.dylib库文件

第三步创建数据库对象
staticsqlite3*db =nil;

第四步打开数据库
- (void)openDB
{
if(db!=nil) {
NSLog(@"数据库已经打开");
return;
}
NSArray*array =NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
NSString*path = [arraylastObject];
NSString*sqlitePath = [pathstringByAppendingPathComponent:@"student.sqlite"];
@"sqlitePath = %@",sqlitePath);

//打开数据库
intresult =sqlite3_open(sqlitePath.UTF8String,&db);
if(result ==SQLITE_OK) {
数据库打开成功");

建数据库表
NSString*createSql =@"CREATE TABLE IF NOT EXISTS lanou23(number INTEGER PRIMARY KEY AUTOINCREMENT,name TEXT,gender TEXT,age INTEGER)";
sqlite3_exec(db,createSql.NULL,117)">nil);
创建表成功");
}
else{
创建表失败");
}

}
数据库打开失败");
}

}

第五步插入数据void)insertStudent:(Person*)person
{
创建插入语句
NSString*insertSql = [NSStringstringWithFormat:@"INSERT INTO lanou23(name,gender,age) values('%@','%@','%ld')",person.name,164)">gender,164)">age];

插入成功插入失败");
}
}

第六步修改数据void)updateStudent:(Person*)person number:(NSInteger)number
{
NSString*updataSql = [@"UPDATE lanou23 SET name = '%@',gender = '%@',age = '%ld' WHERE number = '%ld'",164)">age,number];
修改成功修改失败第七步删除void)deleteStudent:(NSString*deleteSql = [@"DELETE FROM lanou23 WHERE number = '%ld'",deleteSql.删除成功else
{
删除失败第八步查询所有数据

- (
NSMutableArray*)selectAllStudent
{
NSMutableArray*array = [NSMutableArrayarray];

NSString*selectSql =@"SELECT * FROM lanou23";
查询一个或几个数据
NSString*sql = [@"SELECT * FROM lanou23 WHERE name = %@",大水杯"];
声明数据库跟随指针,作用是跟踪表里的每一行
sqlite3_stmt*stmt =nil;

查询之前准备工作将数据库对象db,sql语句关联起来
//1.参数1.数据库对象
//2.2.sql语句
//3.3.sql语句长度为不限长度
//4.4.数据库跟随指针
sqlite3_prepare_v2(1,&stmt,19)">查询成功");


循环遍历每条数据
while(sqlite3_step(stmt) ==SQLITE_ROW) {

取值

intnumber =sqlite3_column_int(stmt,0);
constunsignedchar* name =sqlite3_column_text(stmt,255)">1);
char* gender =2);
intage =3);

NSString*nameStr = [stringWithUTF8String:(char*)name];
NSString*genderStr = [char*)gender];
NSIntegernumberInteger = number;
NSIntegerageInteger = age;

Person*person = [[Personalloc]init];
person.
name= nameStr;
person.
gender= genderStr;
person.
age= ageInteger;
person.
number= numberInteger;

[array
addObject:person];

}

}
查询失败");
}

returnarray;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读