循序渐进SQLite

储存管理数据有很多解决方法,当需要与大量数据打交道时,首选当然是使用数据库啦。SQLite是一个开源的嵌入式关系数据库,它在2000年由D. Richard Hipp发布。SQLite并不像DMBSs那么强大,比如MySQL或者SQL Server,而且它并不具有它们二者的所有特性。但是,它的伟大之处在于:

  • 它是轻量级的,可移植性好,很容易使用,高效而且可靠
  • 自包含一个嵌入式的SQL引擎,几乎你所有的SQL知识都能应用到
  • SQLite嵌入到使用它的应用程序中,它们共用相同的进程空间,而不是单独的一个进程
  • 在你的程序内部不需要网络配置,也不需要管理。因为客户端和服务器在同一进程空间运行
  • SQLite 的数据库权限只依赖于文件系统,没有用户帐户的概念
  • 完全被Apple支持,在iOS和Mac OS下都能使用
  • 得到全世界开发者持续的技术支持,同时也会增加新特性
  • SQLite 有数据库级锁定,没有网络服务器
  • 它需要的内存,其它开销很小,适合用于嵌入式设备。你需要做的仅仅是把它正确的编译到你的程序

通常是不建议直接操作SQLite库,而是采用一些开源的第三方库来进行操作。比如FMDB,它对SQLite做了不错的封装。

一些SQLite 3函数:

sqlite3_open:用来创建并打开数据库文件,有两个参数,一个是数据库文件名,一个是数据库句柄。如果,文件不存在,则先创建再打开,存在则直接打开它。

sqlite3_prepare_v2:此函数的目的是要在字符串格式中获取SQL语句,然后转化为SQLite 3所认可的可执行的格式。

sqlite3_step:这个函数实际上就是执行由上个函数先前准备的SQL语句(查询),它可以被执行查询调用一次,当检索数据时则被调用多次。需要记住的是它不能被之前的sqlite3_prepare_v2函数所调用。

sqlite3_column_count:返回的是一个表中包含的字段的所有列数。

sqlite3_column_text:此方法返回的是其中一列的文本格式的内容,其实就是一个字符串或者字符值。接受两个参数:一个是SQLite查询语句,另一个是列的索引。

sqlite3_column_name:返回列的名称。参数和上面函数相同。

sqlite3_changes: 返回经过语句查询得到的行数。

sqlite3_last_insert_rowid:返回上次插入的行ID。

sqlite3_errmsg:返回一个关于SQLite出错的描述

sqlite3_finalize:从内存中删除一个预先准备好的语句。

sqlite3_close:关闭一个已打开的数据库连接,它会在数据库执行完数据操作以及释放任何保留的系统资源后调用。

你可能感兴趣的:(循序渐进SQLite)