sqlite3数据库

来源:互联网 发布:小米净水器怎么样 知乎 编辑:程序博客网 时间:2024/06/01 09:12
sqlite3数据库
(1)什么是sqlite3
  SQLite是一款轻型的数据库,是遵守ACID的关系式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。
(2)在linux系统下sqlite3的安装
    直接输入命令sqlite3,如果有版本号出现说明已经安装了数据库
    具体安装以后再说
(3)sqlite3的启动
    示例:
#sqlite3 mydb.db
说明:
   打开数据库文件mydb.txt,数据库名默认为main。如果mydb.txt不存在,则新建文件
(4)sqlite3命令的使用
       注意:SQLite3 命令以”.”号开始,而SQL操作语句以”;”结束
       .databese   查看数据库
       .tables        查看数据库表有哪些
       .help          帮助
       .quit           退出命令行
       .schema[表名]    查看所有或单表的结构  
       .output[file|stdout]         将结果输出到文件或标准屏幕
(5)创建表
    举个栗子:  打开.txt文件
CREATE  TABLE  stuInfo    /*-创建学员信息表-*/
(
    stuNo   CHAR(6)  primary key,   --学号,非空(必填)
    stuName  VARCHAR(20)  NOT  NULL ,  --姓名,非空(必填)
    stuAge  INT  NOT  NULL,  --年龄,INT类型默认为4个字节
    stuID  NUMERIC(18,0),     --身份证号
    stuSeat   SMALLINT  IDENTITY (1,1),   --座位号,自动编号
    stuAddress   TEXT   --住址,允许为空,即可选输入
) ;
(6)表操作
   删除表DROP TABLE [IF EXISTS] [database-name.] table-name 
   改表结构:
   ALTER TABLE [database-name .] table-name alteration
   alteration ::=RENAME TO new-table-name
   alteration ::=ADD [COLUMN] column-def
  (7)数据简单操作
          1.插入数据
          INSERT  INTO <表名> [(列名)] VALUES <值列表>
          如: insert into tbl_usr values(1002,'lili','123456','2','1','技术部','ok');
         2.更新数据
         UPDATE <表名> SET <列名 = 更新值> 
         [WHERE <更新条件>]
        如update tbl_usr set usr_id=1008 where usr_id=1007;
       3.删除数据
        DELETE FROM <表名> [WHERE <删除条件>]
         delete from tbl_usr where usr_id=1008;
   (8)数据简单查询
       1.SELECT [*]|[列名] 
          FROM [表名][,表名]
          WHERE [查询条件]
       示例
            select * from tab_student where stu_no=‘GN1003’
        2.运算符
         <>不等于  <小于 >大于 =等于  <=小于等于   >=大于等于  !非
        如: select * from tbl_usr where usr_id<>1008;
       3.通配符
       ‘—’一个字符   % 任意长度的字符串   []括号内所指定范围内的一个字符  [^]不在括号内所指定的一个字符
      如select * from tbl_usr where usr_id like '_008';
      4.逻辑表达式
      and逻辑与  OR逻辑或  NOT逻辑非
      5.其他
           between... and...在什么之间
           order by...    将查询后结果集重新排序    select * from t_student order by sno默认升序   后面加DESC就变降序
           Distinct子句  将重复的行合并
           select distinct ssex from t_student 
           select * from tablename limit X offset Y
           Y:从查询结果集偏移量Y开始显示
           X:限制显示的记录数
       6.外链接
举个栗子:
        select A.sno, A.sname, B.cscore
    from t_student A left outer join t_score B
        on A.sno = B.sno;
      7.自连接
举个栗子:
      select a.eid,a.ename,a.epid,b.ename,b.eage
     from employee a left outer join employee b
     on a.epid = b.eid
       
小技巧:
更简便的方法来编辑sqlite3里的数据:
       1.创建一个filename.sql文件,直接用普通文本工具就可以编辑,直接在里面输入数据
       如:
--用户表  ‘--’用来注释
 drop table if exists tbl_usr;  --记得加入这句
 create table tbl_usr(
 usr_id numeric(6) primary key,
 usr_name varchar(10) NOT NULL,
 usr_psw varchar(6),
 usr_type char(1),
 usr_state char(1),
 usr_department varchar(20),
 usr_re varchar(100));
        2.打开.db 文件sqlite3  filename.db
       3.  执行.read  filename.sql
       就可以将数据导入filename.db文件中
原创粉丝点击