iOS数据库操作
来源:互联网 发布:mac的软件如何卸载 编辑:程序博客网 时间:2024/06/05 10:23
iOS的数据库是sqlite3,是模糊类型的数据库,但是仍然不能随便定义数据类型
* 使用时首先导入数据库包,然后声明数据库变量:sqlite3 *db;
* 打开数据库:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documents = [paths objectAtIndex:0];
NSString *database_path = [documents stringByAppendingPathComponent:dbName];
if (sqlite3_open([database_path UTF8String], &db) != SQLITE_OK) { sqlite3_close(db); NSLog(@"数据库打开失败");}
* 建表并插入数据:
NSString *sqlCreateTable = @”CREATE TABLE IF NOT EXISTS USERS2 (ID INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, sex TEXT,password TEXT,phone TEXT, location TEXT)”;
[self execSql:sqlCreateTable];
char *update = “INSERT OR REPLACE INTO USERS2(name,sex,password,phone,location)”“VALUES(?,?,?,?,?);”;
char *errorMsg = NULL; sqlite3_stmt *stmt; if (sqlite3_prepare_v2(db, update, -1, &stmt, nil) == SQLITE_OK) { //【插入数据】在这里我们使用绑定数据的方法,参数一:sqlite3_stmt,参数二:插入列号,参数三:插入的数据,参数四:数据长度(-1代表全部),参数五:是否需要回调 sqlite3_bind_text(stmt, 1, [userNameText.text UTF8String], -1, NULL); sqlite3_bind_text(stmt, 2, [xingBei UTF8String], -1, NULL); sqlite3_bind_text(stmt, 3, [passText.text UTF8String], -1, NULL); sqlite3_bind_text(stmt, 4, [phoneText.text UTF8String], -1, NULL); sqlite3_bind_text(stmt, 5, [diZhiText.text UTF8String], -1, NULL); } NSLog(@"yuyuyuyuyyyyyyyyyyyyyyyyyyyyyy"); if (sqlite3_step(stmt) != SQLITE_DONE) NSLog(@"数据更新失败"); }
* 查找内容:
NSString sqlQuery = @”SELECT FROM USERS2”;
sqlite3_stmt *statement;
if (sqlite3_prepare_v2(db, [sqlQuery UTF8String], -1, &statement, nil) == SQLITE_OK) {
while (sqlite3_step(statement) == SQLITE_ROW) { char *name = (char*)sqlite3_column_text(statement, 1); NSString *nsNameStr = [[NSString alloc]initWithUTF8String:name]; char *password=(char*)sqlite3_column_text(statement, 3); NSString *nsPasswordStr=[[NSString alloc]initWithUTF8String:password]; NSLog(@"name:%@ password:%@ ",nsNameStr,nsPasswordStr); }}
* 删除内容:
NSString *sqlQuery2 = @”DELETE FROM USERS2 WHERE name =’Wx’ “;
if (sqlite3_prepare_v2(db, [sqlQuery2 UTF8String], -1, &statement, nil) == SQLITE_OK) {
while (sqlite3_step(statement) == SQLITE_ROW) { } }
- iphone ios 数据库操作
- ios 数据库简单操作
- iOS sqlite3 数据库操作
- 数据库操作ios
- IOS sqlite数据库操作
- ios 数据库操作
- IOS sqlite数据库操作
- iOS SQL数据库操作
- IOS coredata数据库操作
- IOS数据库操作(Sqlite)
- IOS-SQLite数据库操作
- ios SQlite操作数据库
- IOS操作数据库总结
- iOS SQLite3数据库操作
- iOS数据库操作安全
- iOS中的数据库操作
- iOS数据库操作
- IOS使用sqlite数据库操作
- powerbi内部部署安装指导
- error: Setup script exited with error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
- 题目二:给定一个数组,值全是正数,请返回累加和为给定值k的最长子数组长度。
- Java并发编程:Callable、Future和FutureTask
- hdu 2070 Fibbonacci Number
- iOS数据库操作
- 二叉搜索树
- 【ubuntu_problems】Ubuntu输入指令时自动补全的相关问题
- hdu 2071 Max Num
- springboot【4】web开发之使用模板引擎渲染web视图
- BottomGroup
- 心急的C小加
- spring之外部文件的加载详解
- hdu 1029 Ignatius and the Princess IV