zoukankan      html  css  js  c++  java
  • linux 下按在sqllite

    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表中用户信息。

  • 相关阅读:
    android之AlertDialog 点击其它区域自己主动消失
    leetCode191/201/202/136 -Number of 1 Bits/Bitwise AND of Numbers Range/Happy Number/Single Number
    CEF 框架使用集锦
    Qt WebEngine Debugging and Profiling
    Qt内置浏览器引擎WebEngine调试和分析方法
    QWebEngine踩坑记录
    带外(out of band)数据
    碰撞检测算法:点和矩形碰撞、点和圆形碰撞、矩形碰撞、圆形碰撞
    windows 7 安装visual studio 2019 闪退问题解决
    最小二乘法
  • 原文地址:https://www.cnblogs.com/zhoug2020/p/4060426.html
Copyright © 2011-2022 走看看