·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> app软件开发 >> IOS开发 >> IOS学习笔记----15/09/14

IOS学习笔记----15/09/14

作者:佚名      IOS开发编辑:admin      更新时间:2022-07-23

1.Sqlite3数据库的创建顺序:

  1. 先使用C语言函数 [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject] 来获得数据库的Document目录,再通过 stringByAppendingPathComponent 方法来拼接出数据库文件目录;
  2. 创建一个sqlite3的指针对象,并且赋予NULL值;
  3. 使用C语言函数 sqlite3_open(数据库目录.UTF8String, &sqlite3指针对象);
  4. 通过使用if语句判断打开数据库函数的返回值是否为 SQLITE_OK 来判断是否打开成功;

2.Sqlite3数据库表的创建顺序:

  1. 先创建 const char *sql,指针对象用来存放sql语句;
  2. 创建 char *errorMesg = NULL;
  3. 使用C语言函数 sqlite3_exec(sqlite3指针对象, sql语句, NULL, NULL, &errorMesg) 方法来执行sql语句,同样有一个int类型的返回值,可以和创建数据库第四步一样来判断,如果失败可以使用%s直接打印errorMesg来判断成功或者失败;

3.Sqlite3数据库的update以及delete操作顺序和创建表的差不多,只需要更改下语句就行了。

4.Sqlite3数据库的查询语句顺序比较复杂,如下:

  1. 定义一个 const char *sql 语句;
  2. 定义一个 sqlite3_stmt 指针对象;
  3. 使用 sqlite3_PRepare_v2(sqlite指针对象, sql语句, -1(数据的长度,-1则会自动计算), stmt指针对象地址, NULL) 来检测sql语句的合法性;
  4. 通过返回值判断是否正确;
  5. 如果正确,则使用 while (sqlite_step(stmt) == SQLITE_ROW) 判断是否查到一行;
  6. 在循环的时候使用 sqlite_column_数据类型(结果指针对象, 列号) C语言函数来获得;

5.在定义查询语句的时候应该把等号右边的字符串变为?,然后在执行前使用 sqlite_bind_数据类型(结果集指针对象, 问号的索引(从1开始), 要替换的数据, -1(数据的长度,-1则会自动计算), NULL(回调函数));

 


上个礼拜一直在做小练习,做了一个礼拜的界面,也遇到了一些问题,同时也解决了一部分,虽然解决方式有点取巧,但是我觉得先解决问题再考虑优化才是开发的最好方式。这礼拜边学边开始实现练习的逻辑部分。