sqlite如何使用:命令行+代码实操

sqlite如何使用,你可以先在命令行完成建库、建表、增删改查,再通过Python、Java等编程语言调用接口读写文件数据库;该工具适合单机、读多写少、单文件部署的场景,当多线程同时高频写入、数据库文件超过500GB、部署在网络磁盘时,会出现明显性能下降,不建议选用。

sqlite如何使用:命令行操作步骤

你先打开终端或者CMD窗口,输入sqlite3数据库文件名,文件不存在就会自动生成,不带文件名则创建临时内存库,程序关闭后数据自动清空。

所有SQL语句必须以分号结尾,点开头的指令属于点命令,不需要加分号。

建表语句直接执行createtableuser(idintegerprimarykey,nametext);字段类型可以自由填写,sqlite不会严格限制数据类型,仅integerprimarykey只能存储整数。

插入数据用insertintouservalues(1,'张三');查询用select*fromuser;修改与删除语句和标准SQL保持一致,执行完成后输入.quit退出客户端。

开启WAL预写日志可以提升读写并发,输入pragmajournal_mode=WAL;即可开启,能大幅降低读操作被写操作阻塞的概率。

sqlite如何使用:编程语言调用方法

Python内置sqlite3模块,不需要额外安装依赖,直接导入模块就能打开数据库文件。

先调用connect()方法连接数据库,再创建游标对象执行SQL语句,执行完成后调用commit()提交事务,最后关闭连接,避免文件锁长期占用。

Java开发可以使用sqlite-jdbc驱动,配置连接字符串指向本地db文件,写法和MySQLJDBC大体一致,仅连接地址格式存在区别。

sqlite如何使用:不同存储模式对比

存储模式操作方式适用场景存在短板
文件数据库指定db文件名,数据持久保存到本地磁盘桌面软件、移动端APP、本地数据存储网络文件系统下容易出现文件锁冲突
内存数据库连接字符串填写:memory:临时运算、短期缓存、测试脚本程序退出后所有数据直接丢失,无法持久化

sqlite如何使用:权限与备份操作

sqlite本身没有账号密码体系,数据库访问权限完全依托操作系统文件权限,你只需要修改db文件的读写权限,就能限制其他程序访问,不存在独立的数据库账户管理功能。

备份可以直接复制db文件,也可以在命令行输入.backup备份文件名,这种方式能保证事务完整,避免复制过程中出现数据损坏。

执行vacuum指令可以清理数据库碎片,收缩文件体积,频繁增删数据之后执行这条命令,能够让数据库文件体积缩小30%左右。

sqlite如何使用:需要规避的边界条件

同一时刻仅支持一个写事务并发提交,大量并发写入会产生排队等待,写并发量超过每秒两千次时,性能下滑会变得很明显。

不要把数据库文件放在NFS网络共享盘,文件锁机制容易失效,大概率出现数据错乱。

该数据库单文件上限为281TB,但多数文件系统限制单文件大小低于这个数值,实际项目里尽量把单库控制在1TB以内,管理起来更为稳定。

敬慕百科汇集百科知识与游戏文化,带你发现世界的每一个精彩角落。

想要了解更多关于sqlite如何使用的文章欢迎访问:百科