1 安装

去sqlite主页http://www.sqlite.org/.跳转到下载也http://www.sqlite.org/download.html。源码下载sqlite-amalgamation-3.7.3.tar.gz

我去的时候是3.7.3版现在估计升级了。

进入下载目录,解压文件tar -zxvf sqlite-amalgamation-3.7.3.tar.gz.

解压后生成sqlite-3.7.3目录. cd 进入sqlite-3.7.3。

./configure

make

sudo make install

安装完成。

2测试

在任意目录下新建一个数据库,比如student ,

命令: sqlite3 student

出现如下提示:

SQLite version 3.7.2
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>

输入.help可以看到命令列表。

输入sql语句create table user(username text primary key, password text); 建一张user表

输入sql语句insert into user values("tianyou121", "123"); 插入一个用户。

输入sql语句select * from user; 可以查看user表.

输入sql命令是记得结尾的';'号。

可以输入如下程序测试数据库:

1 #include <stdio.h>
  2 #include <stdlib.h>
  3
  4 #include <sqlite3.h>
  5
  6 int myfunc(void *p, int argc, char **argv, char **argvv)
  7 {
  8         int i;
  9         *(int *)p = 0;
 10         for(i =0; i < argc; i++)
 11         {
 12                 printf("%s = %s ", argvv[i], argv[i] ? argv[i] :"NULL");
 13         }
 14         putchar('/n');
 15         return 0;
 16 }
 17
 18 int main(int argc, char *argv[])
 19 {
 20         sqlite3 *db;
 21         char *err =0;
 22         int ret =0;
 23         int empty =1;
 24
 25         ret = sqlite3_open("student",&db);
 26         if(ret !=SQLITE_OK)
 27         {
 28                 fputs("/n",stderr);
 29                 exit(1);
 30         }
 31         ret = sqlite3_exec(db, "select * from user;", myfunc, &empty, &err);
 32
 33         if(ret != SQLITE_OK)
 34         {
 35                 fputs(err,stderr);
 36                 fputs("/n",stderr);
 37                 sqlite3_close(db);
 38                 exit(1);
 39         }
 40
 41         if(empty)
 42         {
 43                 fputs("table student is empty/n", stderr);
 44                 exit(1);
 45         }
 46
 47         sqlite3_close(db);
 48
 49         return 0;
 50 }

保存文件为sqlite3_t.c和数据库文件放在一个目录下。
用gcc 编译:gcc -o sqlite_t sqlite3_t.c -lsqlite3

记得加上-lsqlite3指定库文件,否则编译不通。

./sqlite_t

可以看到user表中用户信息。

linux 下按在sqllite的更多相关文章

  1. 使用linux下的C操作SQLLITE

    from: http://baike.so.com/doc/1529694.html 由于Linux下侧重使用命令,没有win的操作容易上手,所以在测试C操作SQLITE时会比较容易出现错误,给大家做 ...

  2. windows下修复Linux引导 and linux下几个常用软件

    在这里,我选择的是deepinLinux,不用说,高端大气上档次! Linux下引导修复 在win7上安装好了Linux,一不小心Linux系统启动不了 (一不小心的过程,想使用root登录图像界面, ...

  3. Linux下安装Apache并以mod_wsgi方式部署django站点

    源码编译方式安装Apache 首先下载Apache源码压缩包,地址为http://mirror.bit.edu.cn/apache/httpd/ 继续下载apr和apr-util压缩包,地址为http ...

  4. linux下svn(subversion)服务端添加工程及配置权限

    linux下svn(subversion)服务端添加工程及配置权限 转载请注明源地址:http://www.cnblogs.com/funnyzpc/p/9010507.html 此篇我只是将所做过的 ...

  5. linux下几个常用软件

    Ubuntu 软件包地址 https://packages.ubuntu.com/ 一. 字体 不管是雅黑还是宋体,从windows cp过来后, 直接双击打开并安装 二. Meld 可视的diff和 ...

  6. NodeJs在Linux下使用的各种问题

    环境:ubuntu16.04 ubuntu中安装NodeJs 通过apt-get命令安装后发现只能使用nodejs,而没有node命令 如果想避免这种情况请看下面连接的这种安装方式: 拓展见:Linu ...

  7. Linux下服务器端开发流程及相关工具介绍(C++)

    去年刚毕业来公司后,做为新人,发现很多东西都没有文档,各种工具和地址都是口口相传的,而且很多时候都是不知道有哪些工具可以使用,所以当时就想把自己接触到的这些东西记录下来,为后来者提供参考,相当于一个路 ...

  8. Linux下Nodejs安装(完整详细)

    之前安装过windows下以及Mac下的node,感觉还是很方便的,不成想今天安装linux下的坑了老半天,特此记录. 首先去官网下载代码,这里一定要注意安装分两种,一种是Source Code源码, ...

  9. (转载)linux下各个文件夹的作用

    linux下的文件结构,看看每个文件夹都是干吗用的/bin 二进制可执行命令 /dev 设备特殊文件 /etc 系统管理和配置文件 /etc/rc.d 启动的配置文件和脚本 /home 用户主目录的基 ...

随机推荐

  1. 扩展 delphi 线程 使之传递参数.(给匿名线程增加参数)

    新delphi的线程TThread有了CreateAnonymousThread方法,如果再为它加一个可传递的参数不就更好了吗?代码如下: TAnonymousThreadX<T> = c ...

  2. iOS sqlite3数据库解析

    看来从版本3.3.1基本上已经支持线程句柄的传递功能.具体限制我标记了一下.(6) Is SQLite threadsafe?SQLite is threadsafe. We make this co ...

  3. 读取redis中的数据时出现:MISCONF Redis is configured to save RDB snapshots

    读取redis中的数据时出现:MISCONF Redis is configured to save RDB snapshots   以下为异常详细信息: Exception in thread &q ...

  4. MyBatis学习总结_01_MyBatis快速入门

    一.Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以 ...

  5. jsp页面变量作用域问题

    想实现一个注销的功能,在页面上有个注销按钮,我想一点它就注销,用了js给按钮加了onclick代码,如下 <%      session = request.getSession(true); ...

  6. SPOJ 1811 Longest Common Substring 后缀自动机

    模板来源:http://www.neroysq.com/?p=76 思路:http://blog.sina.com.cn/s/blog_7812e98601012dfv.html 题意就是求两个字符串 ...

  7. jquery 计算输入的文本的utf-8字节长度

    jquery-2.1.1.min.js /*! jQuery v2.1.1 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license ...

  8. mysql0000-00-00日期异常及解决方法

    当mysql的datetime类型的值设置为0000-00-00 00:00:00(或者 0000-00-00)的时候,java的datetime或者timestamp读取到这个值并转换的时候,将抛出 ...

  9. Java中获取完整的url

    Java中获得完整的URl字符串 HttpServletRequest httpRequest=(HttpServletRequest)request; String strBackUrl = &qu ...

  10. Java 异常 —— Bad version number in .class file

    把一个项目拷贝到另一个环境,运行时报错: Caused by: java.lang.UnsupportedClassVersionError: Bad version number in .class ...