【sqlite】——使用记录

前端之家收集整理的这篇文章主要介绍了【sqlite】——使用记录前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

一、linux下sqlite3安装方法

1. tar -xvzf sqlite3.....tar.gz

2. cd sqlite3..

3. ./configure -disable-tcl --prefix=/usr/local/sqlite3

4.make;make install


二、基本的增删改查操作

插入:insert into <表名> values(.....) //表中数据

建表:create table <表名>(.....) //表中所含数据及其类型

查询:select * from <表名>

C中的回调法:sqlite3_exec(db,sql,select_callback,db,&zErrMsg);

int select_callback(void *Notused,int argc,char *argv,char **azColName)

回调函数sqlite3_exec中调用后,argc保存查询到的数据条数,argv保存了数据值,azColName保存了每项数据的名字;第二个db传给回调函数的第一个参数,未使用;

C中的非回调法:sqlite3_get_table(db,&azResult,&nrow,&ncolumn,&zErrMsg)

for(i=0; i < (nrow+1)*ncolumn; i++)

printf("value[%d]=%s\n",i,azResult[i]);

在azResult中保存的是select的结果,nrow保存的是取出数据的行数,ncolumn保存的是取出数据的列数。


修改:update <表名> set <列名>="新值" where 条件 //如果没有设置条件,这一列都会被更新

删除:delete from <表名> where <条件> //如果不设定条件,则删除所用记录

修改表:sqlite的alter table命令只允许用户重命名添加新的字段到已有的表中,不能从表中删除字段,并且只能在 表的末尾添加栏目;

修改表名:alter table <旧表名> rename to<新表名>

添加一列:alter table <表名> add column <列名> <数据类型> [限定符]

删除表:drop table <表名>


三、sqlite3命令行常用命令

进入到sqlite3命令行模式,用"."+"关键字"执行命令

.tables——列出当前数据库中所含表

.schema <表名>——显示建表时执行的操作

.headers on——让输出显示表头信息

.database——显示数据库信息

.mode []——设置显示方式:csv、column、html、insert、line、list、tabs、tcl,如.model csv


四、从excel中导入数据

1.在test.db中建表:create table bookroom(id integer,roomname nvarchar(20),mapfilename nvarchar(20));

2.新建exc,生成csv格式的数据,和上表格式一致,如下:

30001, 数学, 3楼1号

30002, 语文, 2楼18号

将excel另存为csv格式:bookroom.csv

3.导入数据:

①打开数据库,进入sqlite3命令行模式,sqlite3 test.db

②.separator ‘,’

③.import bookroom.csv bookroom

或者:

#sqlite3 test.db ".import bookroom.csv bookroom"


4.导出数据库中的数据到txt文件

#sqlite3 -header test.db "select *from bookroom;">license.txt



参考资料:

http://www.2cto.com/database/201112/113683.html

http://it.100xuexi.com/ExtendItem/OTDetail.aspx?id=15123afe-d40f-4439-b14b-f08c034ce295

http://blog.chinaunix.net/uid-1844931-id-2981048.html

http://www.cnblogs.com/nbsofer/archive/2012/05/02/2479168.html

原文链接:https://www.f2er.com/sqlite/201387.html

猜你在找的Sqlite相关文章