计算机网络:数据库(sqlite3)

发布于:2025-08-30 ⋅ 阅读:(19) ⋅ 点赞:(0)

一、常用的数据库

ORACLE(大型)、Mysal(开源常用)、SQL server、Access、Sybse、Windows NT

二、sqlite3

(一)特性:

        <1>零配置,无需安装和配置
        <2>储存在单一磁盘文件中的一个完整的数据库
        <3>数据库文件可以在不同字节顺序的机器间自由共享
        <4>支持数据库大小之2TB
        <5>足够小,全部源代码大致3万行C代码,250KB
        <6>比目前流行的大多数数据库对数据的操作要快

(二)基础命令

        1.  .help ---查看 sqlite3的支持的相关命令 
             .quit ---退出sqlite3 软件 
             .databases --- 查看当前关联的数据库文件 是哪个?

        2.增

                创建表:create table <表名> (字段1 数据类型,字段2,.....); 

                              create table user (name,sex,age,tel);

                 命令: sqlite3> .tables  //查看数据库中表有哪些
                             sqlite3> .schema   //查看表的结构

                             PRIMARY KEY  //主键   ----  唯一来区分一个数据

                插入:insert into 表名 values ("tom","male",19,99.5);

                           insert into stu (name,sex) values ("jack","male");

                时间列:CREATE TABLE user1(id int,name char,age int,dt datetime);
                               insert into user1 values (2,'张三',23,datetime('now','+8 hours'));

                自动增长列:    asc  -- 升序         desc -- 降序 

                                    create table user5 (id INTEGER PRIMARY KEY ASC,name char, age int); 
                                    PRIMARY KEY //主键 
                                    ASC         //自动增长的顺序 
                                    //int 需要写成 INTEGER 才能实现自动增长 
                                    create table user4 (id int   PRIMARY KEY ASC,name char, age int);

        3.删

                 删除记录:delete from 表名 where 条件;
                 删除表:drop table 表名称;

                  条件语句:where 列名 操作符 列值
                                  update stu set sno=110 where name="tom";

        4.改

                  添加字段:alter table 表名 add 列名        alter table stu add sno;

                  修改表中的数据:update 表名 set 列1=值1 [, 列2 = 值2, ...] [匹配条件];

        5.查

                   select 列名1,列名2,... from 表名; 
   
                   select * from stu; //表示查看 stu表中所有列的信息 
  
                    sqlite3 命令:
                          .headers on //打开表头 
                          .mode column //指定查询的输出格式 以列对齐的方式

                  查询:
                   1.查询部分字段 
                    select name from stu where score>80;
                   2.in语句 
                     select * from stu where age in(18,19);
                   3.and语句 //多个条件  
                     select * from stu where age > 18 and score > 80;
                   4.or语句 
                     select * from stu where age > 18 or score > 80;
                   5. 范围  between ... and ... 
                   select * from stu where age between 19 and 20;
                   6. like 
                      select * from stu where name like "tom";
                      select * from stu where name like "%tom%";  //% 表示匹配任意多个字符 
                      select * from stu where name like "_tom_";  //_ 表示匹配任意一个字符
                   7. order by
                         select * from user where age >= 18 order by age;  
                         select * from user where age >= 18 order by age limit 2; 

三、sqlite编程

(一)打开:sqlite3_open

(二)读写:sqlite3_exec

(三)关闭:   sqlite3_close