• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    ubuntu下使用SQLite3的基本命令

    发布者: 404号房间 | 发布时间: 2025-6-18 14:46| 查看数: 98| 评论数: 0|帖子模式

    系统平台:ubuntu10.04
    简介
    sqlite3一款主要用于嵌入式的轻量级数据库,本文旨在为熟悉sqlite3基本命令提供技术文档。
         备注:本文所有操作均在root用户下进行。
    1、安装sqlite3
    ubuntu下安装sqlite3直接在终端运行命令:
    1. #apt-get install sqlite3
    复制代码
    查看版本信息:
    1. #sqlite3 -version
    复制代码

    2 、sqlite3常用命令
    当前目录下建立或打开test.db数据库文件,并进入sqlite命令终端,以sqlite>前缀标识:
    1. #sqlite3 test.db
    复制代码

    查看数据库文件信息命令(注意命令前带字符'.'):
    1. sqlite>.database
    复制代码
    查看所有表的创建语句:
    1. sqlite>.schema
    复制代码

    查看指定表的创建语句:
    1. sqlite>.schema table_name
    复制代码

    1. 以sql语句的形式列出表内容:
    2. sqlite>.dump table_name

    3. 设置显示信息的分隔符:
    4. sqlite>.separator symble
    5. Example:设置显示信息以‘:'分隔
    6. sqlite>.separator :

    7. 设置显示模式:
    8. sqlite>.mode mode_name
    9. Example:默认为list,设置为column,其他模式可通过.help查看mode相关内容
    10. sqlite>.mode column

    11. 输出帮助信息:
    12. sqlite>.help

    13. 设置每一列的显示宽度:
    14. sqlite>.width width_value
    15. Example:设置宽度为2
    16. sqlite>.width 2

    17. 列出当前显示格式的配置:
    18. sqlite>.show

    19. 退出sqlite终端命令:
    20. sqlite>.quit

    21. sqlite>.exit
    复制代码

    3、sqlite3指令
    sql的指令格式:所有sql指令都是以分号(;)结尾,两个减号(--)则表示注释。
    如:
    1. sqlite>create studen_table(Stu_no interger PRIMARY KEY, Name text NOT NULL, Id interger UNIQUE, Age interger CHECK(Age>6), School text DEFAULT 'xx小学);
    复制代码
    该语句创建一个记录学生信息的数据表。

    3.1 sqlite3存储数据的类型
    NULL:标识一个NULL值
    INTERGER:整数类型
    REAL:浮点数
    TEXT:字符串
    BLOB:二进制数
    3.2 sqlite3存储数据的约束条件
    Sqlite常用约束条件如下:
    PRIMARY KEY - 主键:
    1)主键的值必须唯一,用于标识每一条记录,如学生的学号
    2)主键同时也是一个索引,通过主键查找记录速度较快
    3)主键如果是整数类型,该列的值可以自动增长
    NOT NULL - 非空:
    约束列记录不能为空,否则报错
    UNIQUE - 唯一:
    除主键外,约束其他列的数据的值唯一
    CHECK - 条件检查:
    约束该列的值必须符合条件才可存入
    DEFAULT - 默认值:
    列数据中的值基本都是一样的,这样的字段列可设为默认值
    3.3 sqlite3常用指令
    1. 1)建立数据表
    2. create table table_name(field1 type1, field2 type1, ...);
    3. table_name是要创建数据表名称,fieldx是数据表内字段名称,typex则是字段类型。
    4. 例,建立一个简单的学生信息表,它包含学号与姓名等学生信息:
    5. create table student_info(stu_no interger primary key, name text);

    6. 2)添加数据记录
    7. insert into table_name(field1, field2, ...) values(val1, val2, ...);
    8. valx为需要存入字段的值。
    9. 例,往学生信息表添加数据:
    10. Insert into student_info(stu_no, name) values(0001, alex);

    11. 3)修改数据记录
    12. update table_name set field1=val1, field2=val2 where expression;
    13. where是sql语句中用于条件判断的命令,expression为判断表达式
    14. 例,修改学生信息表学号为0001的数据记录:
    15. update student_info set stu_no=0001, name=hence where stu_no=0001;

    16. 4)删除数据记录
    17. delete from table_name [where expression];
    18. 不加判断条件则清空表所有数据记录。
    19. 例,删除学生信息表学号为0001的数据记录:
    20. delete from student_info where stu_no=0001;

    21. 5)查询数据记录
    22. select指令基本格式:
    23. select columns from table_name [where expression];
    24. a查询输出所有数据记录
    25. select * from table_name;
    26. b限制输出数据记录数量
    27. select * from table_name limit val;
    28. c升序输出数据记录
    29. select * from table_name order by field asc;
    30. d降序输出数据记录
    31. select * from table_name order by field desc;
    32. e条件查询
    33. select * from table_name where expression;
    34. select * from table_name where field in ('val1', 'val2', 'val3');
    35. select * from table_name where field between val1 and val2;
    36. f查询记录数目
    37. select count (*) from table_name;
    38. g区分列数据
    39. select distinct field from table_name;
    40. 有一些字段的值可能会重复出现,distinct去掉重复项,将列中各字段值单个列出。

    41. 6)建立索引
    42. 当说数据表存在大量记录,索引有助于加快查找数据表速度。
    43. create index index_name on table_name(field);
    44. 例,针对学生表stu_no字段,建立一个索引:
    45. create index student_index on student_table(stu_no);
    46. 建立完成后,sqlite3在对该字段查询时,会自动使用该索引。

    47. 7)删除数据表或索引
    48. drop table table_name;
    49. drop index index_name;
    复制代码
    参考资料:
    http://www.sqlite.com.cn/MySqlite/4/378.Html

    来源:https://www.jb51.net/article/53951.htm
    免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

    最新评论

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表