当前位置:数据库 > SQLite >>

【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, 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
 
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,