Sqlite入门使用及常见问题

佐手、 提交于 2020-01-12 06:41:30

下载及启用sqlite

SQLite是一款轻型的数据库,占用资源非常的低,处理速度很快,如果想要快速在自己电脑中搭建一个小型数据库,非常推荐使用。
可以在官网下载数据库文件。官网下载地址:https://www.sqlite.org/download.html。
以windows为例:最好下载第三个带.exe的文件,即使电脑是64位也没有关系,64位的电脑能执行32位的应用程序。
在这里插入图片描述
下载后解压会发现有三个文件,经常使用的就是第二个.exe文件。
在这里插入图片描述
可以发现它非常小,放在电脑想要的位置后,把文件路径添加到环境变量中就能通过CMD调用了。
有一个非常方便的操作就是直接把sqlite.exe文件放到和数据库同一个文件夹中,想要打开数据库的时候,直接双击该文件,然后执行代码。

.open DatabaseName.db

就在文件夹里创建一个名为DatabaseName.db的数据库了。下次要打开该数据库,执行同样的代码就行,注意数据库名称不要打错了,不然会创建一个新的空数据库。
创建表格和数据库查询和其他数据库类似,不再赘述。

sqlite常用命令

  1. 查看所有表格
.tables
  1. 查看所有表结构
 .schema 

可以查看该数据库中所有表格的结构,每个字段的数据类型。可以和后文中的.output联合使用,将表结构导出。

  1. 查看所有命令
.help

即可查看所有的sqlite命令,

数据库完整性检验

有的时候数据库会出现查询错误,不知道什么原因时,可通过以下代码检查数据库是否缺失。

PRAGMA quick_check;

在这里插入图片描述

删除数据后数据库大小不变

有的时候发现删除大量数据后数据库大小还是不变,这是因为sqlite默认delete数据并不会把数据从磁盘中删除,可通过以下代码彻底删除DML后的数据:

vacuum;

另一种不推荐的一劳永逸的方法可参考https://www.cnblogs.com/liaocheng/p/6182976.html
注意执行这条代码后,删除的数据就彻底无法回来了,注意数据备份,谨慎操作。

导入导出表格

数据库最常见的操作除了CRUD(增删改查)就是导入导出了。
数据的导入

  1. 数据的导入
.import FILE TABLE
  1. 数据的导出:导出到stu.csv文件中
sqlite> .output stu.csv
sqlite> select * from student;
sqlite> .output stdout

.output stdout表示标准模式导出,一定要执行这一段代码,不然会有可能出现导出的表格没有数据的情况。除csv格式外,还可以导出为txt,excel等格式。

设置分隔符

在使用数据的时候,如果分隔符和数据中的某些字符重合,容易导致表格分列错误,要避免该错误,可以先将数据库的分隔符改成补充和的字符,再进行导出操作。
sqlite可以设置行和列的分隔符,行的默认分隔符是回车,大部分的数据库都是这样的,列的分隔符默认是‘|’,可通过 .separator修改分隔符。

.separator COL ROW

执行.separator 会同时修改行分隔符和列分隔符,第一个字符COL代表列的分隔符,ROW代表行的分隔符。如果只有一个字符,则只修改列的分隔符,因此,有的时候会写sql写习惯了在末尾加一个分号,需注意此行语句不能有分号,如果有分号,容易将分号变成列的分隔符。
sqlite支持将多个字符当成分隔符,如果有需要,可以灵活使用。

以上为本人在使用Sqlite过程中遇到的一些问题及解决方案,如有错误,欢迎指正

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!