窗外杭州迎来了今年的初雪,很棒。原本想配两张朋友圈的照片,但只能传200K如下的就不修了。直接记录下本身接触的SQLite3的入门吧,还好以前用过Oracle和MySQL,上手还蛮快的。sql
1、MAC OSX数据库
首先,这里说明下Mac已经将SQLite进行了预装,启动Terminal,输入如下命令,按步骤来,呵呵。函数
新建数据库文件夹,方便数据库统一进行管理。ui
mkdir sqldatabase cd sqldatabase/
2. 启动SQLite3并建立数据库spa
sqlite3 test.db
这里说明如下退出SQLite3的方式:".exit"或者".quit"
code
3. 查询已有数据库orm
".database"sqlite
4. 查询当前数据库中的表string
192:sqldatabase hansen$ sqlite3 test.db SQLite version 3.8.5 2014-08-15 22:37:57 Enter ".help" for usage hints. sqlite> .table mytable
5. 显示格式的配置状况
it
sqlite> .show echo: off eqp: off explain: off headers: off mode: list nullvalue: "" output: stdout separator: "|" stats: off width:
这些格式根据本身喜爱设置,例如.mode list和.mode column:查询语句执行后以记录为行列出查询结果(二者的区别在于list有分隔符,column没有分隔符隔开),.mode.line:查询语句执行后以字段为行显示。(我的是这么理解的,呵呵)
sqlite> .mode list sqlite> select * from mytable ...> ; 1|vincent 2|tim sqlite> .mode line sqlite> select * from mytable; id = 1 value = vincent id = 2 value = tim sqlite> .mode column sqlite> select * from mytable; 1 vincent 2 tim sqlite> .headers on sqlite> select * from mytable; id value ---------- ---------- 1 vincent 2 tim
6. 查看当前数据库中全部表的建表语句
sqlite> .schema CREATE TABLE mytable(id integer primary key, value text); CREATE TABLE iOStable(id integer primary key, value text);
7. 字段分隔符设置
sqlite> .separator * sqlite> select * from mytable; 1*vincent 2*tim sqlite>
2、iOS
建立一个iOS项目,第一件事就是导入libsqlite3.tdb库。
2. 封装好一些函数以便使用,例如获取数据库路径、执行SQL语句函数等。
// 数据库存放路径 - (NSString *)pathForDB{ NSString *document = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject]; return [document stringByAppendingPathComponent:DatabaseName]; } // 执行SQL语句 - (void)execSQL:(NSString *)sql{ char *error = NULL; if( sqlite3_exec(db, [sql UTF8String], NULL, NULL, &error) != SQLITE_OK ){ NSLog(@"执行SQL语句出错: %s", error); } }
暂时先写这么多了,比较晚了。有不对的地方请多多指教。