zoukankan      html  css  js  c++  java
  • 数据、保存【sqlite】——使用记录by小雨

    在写这篇文章之前,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美元给程序员,转身就去睡觉了。

  • 相关阅读:
    014 停止进程
    014 创建进程的函数使用
    014 进程 获取当前目录 获取当前文件搜在目录 获取环境变量
    013 Windows进程及线程
    012 CopyFile
    011 异步I/O处理 003
    010 异步I/O处理 002
    MVVM
    ORM
    MVC
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3028435.html
Copyright © 2011-2022 走看看