SQLite 的简单介绍
SQLite 的简单介绍
一、定义
一款轻型的数据库,是遵守ACID的关系型数据库管理系统;实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。设计目标是嵌入式的,而且已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。处理速度比MySQL、PostgreSQL都快。
二、工作原理
SQLite引擎不是个程序与之通信的独立进程,而是连接到程序中成为它的一个主要部分。所以主要的通信协议是在编程语言内的直接API调用。这在消耗总量、延迟时间和整体简单性上有积极的作用。整个数据库(定义、表、索引和数据本身)都在宿主主机上存储在一个单一的文件中。它的简单的设计是通过在开始一个事务的时候锁定整个数据文件而完成的。
三、特点:
- 不需要一个单独的服务器进程或操作的系统(无服务器的)。
- SQLite 不需要配置,这意味着不需要安装或管理。
- 一个完整的 SQLite 数据库是存储在一个单一的跨平台的磁盘文件。
- SQLite 是非常小的,c编写的,是轻量级的,完全配置时小于 400KiB,省略可选功能配置时小于250KiB。
- SQLite 是自给自足的,这意味着不需要任何外部的依赖。
- SQLite 事务是完全兼容 ACID 的,允许从多个进程或线程安全访问。
- SQLite 支持 SQL92(SQL2)标准的大多数查询语言的功能。
- SQLite 使用 ANSI-C 编写的,并提供了简单和易于使用的 API。
- 跨平台,SQLite 可在 UNIX(Linux, Mac OS-X, Android, iOS)和 Windows(Win32, WinCE, WinRT)中运行。
四、缺点
- 只能本地使用,无法被远程的客户端访问;
- 适合单线程访问,不适合多线程高并发的场景;
五、应用场景
- 小型网站;
- 嵌入式设备;
- 数据库学习;
- 并发量不高的网站;
六、 Python 使用SQLite
SQLite3可使用sqlite3模块与Python进行集成。
# 如果数据库不存在,那么它就会被创建,最后将返回一个数据库对象。
conn = sqlite3.connect("test.db")
print("数据库打开失败“",conn)
c = conn.cursor()
#创建表
c.execute('CREATE TABLE classdemo (ID INT PRIMARY KEY NOT NULL,NAME TEXT NOT NULL,AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL)')
#向表中插入一行数据
c.execute("INSERT INTO classdemo(ID, NAME, AGE, ADDRESS, SALARY) VALUES(4, 'Mark', 25, 'Rich-Mond ', 65000.00)")
conn.commit()
#查询表
c.execute("SELECT id, name, address, salary from classdemo")
cursor = c.fetchall()
print(cursor)
conn.close()
参考链接
SQLite 菜鸟教程
SQLite百度百科
SQLite 的简单介绍相关推荐
- Django - Django框架 简单介绍
Django框架 简单介绍 本文地址: http://blog.csdn.net/caroline_wendy/article/details/29172271 1. 介绍 Django是一个开放源码 ...
- ocbase 数据库 蚂蚁_iOS开发数据库篇—FMDB简单介绍
iOS开发数据库篇-FMDB简单介绍 一.简单说明 1.什么是FMDB FMDB是iOS平台的SQLite数据库框架 FMDB以OC的方式封装了SQLite的C语言API 2.FMDB的优点 使用起来 ...
- VS+QT+SQLite实现简单的计算器
VS+QT+SQLite实现简单的计算器 0. 计算器功能说明 0.1 计算器界面 0.2 历史记录模块 0.3 总体说明 1. 安装VS 1.1 下载VS_Community 1.2 安装VS 2. ...
- Lemon OA第1篇:简单介绍
官方网站:http://www.mossle.com/ 声明:我不是Lemon OA作者,只是分享好的资源.以下内容均代表个人见解~ 从官网说起 知道Lemon OA,也是最近研究Activiti,看 ...
- Flyway的简单介绍及使用
Flyway的简单介绍及使用 一.开发时管理数据库遇到的问题: 现在开发一般都是团队开发,这样就会出现项目同步的问题,代码同步可以通过SVN工具管理起来,那数据库同步怎么办呢?理想的情况下,在开发新项 ...
- 遗传算法的简单介绍以及模式定理的简单证明
遗传算法 遗传算法(Genetic Algorithm,GA),最早是由美国的John holland在20世纪70年代提出.算法通过模拟达尔文生物进化论的自然选择以及遗传学机理的生物进化过程来搜 ...
- 2021年大数据ELK(十八):Beats 简单介绍和FileBeat工作原理
全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 Beats 简单介绍和FileBeat工作原理 一.Beats 二.FileB ...
- 2021年大数据ELK(十五):Elasticsearch SQL简单介绍
全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 Elasticsearch SQL简单介绍 一.SQL与Elasticsear ...
- 2021年大数据ELK(二):Elasticsearch简单介绍
全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 一.Elasticsearch简介 1.介绍 2.创始人 二.E ...
最新文章
- 再次学习基础爬虫,爬取大学排名。
- ebs 供应商地点信息_实探荣耀办公地:与高通接近达成合作,加快供应商整合脚步...
- SAP CDS entity 中使用 @readonly 进行访问控制
- 如何提高个人的职涯“本钱”
- Boost库之function的使用
- 单片机集成wifi等_从零制作单片机需要哪些知识?
- 内存cookie与持久cookie
- 前端chrome浏览器调试总结??
- LSTM block和cell区别
- ssh 无法连接 z/OS 主机
- 数据结构上机实践第八周项目5 - 计数的模式匹配
- linux dhcp 获取ip地址能上网,设置静态ip地址则不能上网
- 跟随企业数字化转型,FIT2CLOUD推演全栈云管平台
- 2021年PMP考试模拟题1(含答案)
- 淘宝HSF 框架使用 总结
- ajax回调函数的使用;ajax请求成功后对数据的再次使用
- no ip domain lookup
- JMS之——ActiveMQ 高可用与负载均衡集群安装、配置(ZooKeeper + LevelDB + Static discovery)
- vid在c语言中的作用,——PVID的作用及和VID的区别
- 用Python完成 “Excel合并(拆分)” 的各种自动化操作!
热门文章
- Oracle model iterate,ibatis组合Oracle的iterate insert批量插入
- (轉貼) 未來台北捷運路線圖 (News)
- 打包报错:Multiple chunks emit assets to the same filename static/js/chunk-6c337256.33476c81.js
- 离心机如何工作——TFN A17CH微量高速冷冻离心机
- ftok()函数深度解析
- 转行设计师肺腑之言:离开建筑设计行业的9大理由
- openresty 配置模块化
- SCI期刊简介:JOURNAL OF EXPERIMENTAL CLINICAL CANCER RESEARCH
- 老百姓买房的十大死穴 别被一套房拴住一辈子
- 君临天下用计算机怎么弹,君临天下!电脑版教程和按键设置