在写这篇文章之前,xxx已经写过了几篇关于改数据、保存-主题的文章,想要了解的朋友可以去翻一下之前的文章
一、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, sql, &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
文章结束给大家分享下程序员的一些笑话语录:
打赌
飞机上,一位工程师和一位程序员坐在一起。程序员问工程师是否乐意和他一起玩一种有趣的游戏。工程师想睡觉,于是他很有礼貌地拒绝了,转身要睡觉。程序员坚持要玩并解释说这是一个非常有趣的游戏:"我问你一个问题,如果你不知道答案,我付你5美元。然后你问我一个问题,如果我答不上来,我付你5美元。"然而,工程师又很有礼貌地拒绝了,又要去睡觉。 程序员这时有些着急了,他说:"好吧,如果你不知道答案,你付5美元;如果我不知道答案,我付50美元。"果然,这的确起了作用,工程师答应了。程序员就问:"从地球到月球有多远?"工程师一句话也没有说,给了程序员5美元。 现在轮到工程师了,他问程序员:"什么上山时有三条腿,下山却有四条腿?"程序员很吃惊地看着工程师,拿出他的便携式电脑,查找里面的资料,过了半个小时,他叫醒工程师并给了工程师50美元。工程师很礼貌地接过钱又要去睡觉。程序员有些恼怒,问:"那么答案是什么呢?"工程师什么也没有说,掏出钱包,拿出5美元给程序员,转身就去睡觉了。