日期:2014-05-16  浏览次数:20451 次

使用FMDB(转载)

MDB提供了用o-c封装的访问sqlite3的方法,避免了在用O-c编程中夹杂C风格的代码(不是说不能使用,而是夹杂在一块代码风格不一致)。

?

以下记录使用过程中的一些心得:

1创建,插入,更新和删除:使用executeUpdate方法,而查询则用executeQuery

2 插入的数据一律用oc中的对象类型:比如某列是double,插入的时候要用NSNumber对象

3 查询结果的显示:用stringForColumn,dateForColumn等等

4出错处理:[db?hadError]来判断是否有错;[db?lastErrorCode], [db?lastErrorMessage]来查看出错类型和说明

5时间:对于事件类型,可以制定为double

以上是迄今遇到的一些问题,权且记录。

?

另sqlite3中时间函数:

datetime()/datetime('now')显示的是零时区的时间,"YYYY-MM-DD HH:MM:SS"

如果要获得当前时区的可以 datetime('now','localtime')

如果知道是哪个时区的:datetime('now','-3 hours')

其它的时间函数:(摘自官网)

  1. date(timestring, modifier, modifier, ...)
  2. time(timestring, modifier, modifier, ...)
  3. julianday(timestring, modifier, modifier, ...)
  4. strftime(format, timestring, modifier, modifier, ...)

Compute the current date.

?

SELECT date('now');

Compute the last day of the current month.

SELECT date('now','start of