8.1 使用Python操作SQLite数据库

  SQLite是内嵌在Python中的轻量级、基于磁盘文件袋额数据库管理系统,不需要安装和配置服务,支持使用SQL语句来访问数据库。该数据库使用C语言开发,支持大多数SQL91标准,支持原子的、一致的、独立的和持久的事务,不支持外键限制;通过数据库级的独占性和共享性锁定来实现独立事务,当多个线程同时访问同一个数据库并试图写入数据时,每一时刻只有一个线程可以写入数据。

  SQLite支持最大140TB大小的单个数据库,每个数据库完全存储在单个磁盘文件中,以B+树数据结构的形式存储,一个数据库就是一个文件,通过直接复制数据库文件就可以实现数据库的备份。如果需要使用可视化管理工具,可以下载并使用SQLiteManager、SQLite Database Browser 或其他类似工具。

  访问和操作SQLite数据时,首先导入sqlite3模块,然后创建一个与数据库关联的Connection对象,例如:

 1 import sqlite3   #导入模块
 2
 3 #conn = sqlite3.connect(‘example.db‘) #连接数据库
 4 # connect()方法,可以判断一个数据库文件是否存在,如果不存在就自动创建一个,如果存在的话,就打开那个数据库。
 5
 6 #再创建一个Cusor对象,并且调用Cursor对象的execute()方法来执行SQL语句创建数据表以及查询、插入、修改或删除数据库中的数据,例如:
 7 #c = conn.cursor()
 8
 9 #创建表
10 #c.execute(‘‘‘CREATE TABLE stocks(date text,trans text,symbol text,gty real,price real)‘‘‘)
11
12 #向表中插入一条数据
13 #c.execute(‘‘‘insert into stocks values(‘2016-01-05‘,‘BUY‘,‘RHAT‘,100,35.14)‘‘‘)
14
15 #提交当前事务,保存数据
16 #conn.commit()
17
18 #关闭数据库连接
19 #conn.close()
20
21
22
23 #查询刚才插入的数据
24 #由于刚才已经关闭了数据库连接,需要重新创建Connection对象和Cursor对象
25 conn = sqlite3.connect(‘example.db‘)
26 c = conn.execute(‘‘‘select * from stocks‘‘‘)
27 print(c)   #<sqlite3.Cursor object at 0x00000000007E25E0>
28
29 print(list(c))   #[(‘2016-01-05‘, ‘BUY‘, ‘RHAT‘, 100.0, 35.14)]
30
31 #数据成功提取出来了

  还可以用如下方法查询数据:

1 conn = sqlite3.connect(‘example.db‘)
2 c = conn.cursor()
3 a = c.execute(‘select * from stocks‘)
4 print(c)   #<sqlite3.Cursor object at 0x00000000007E25E0>
5
6 for i in a:
7     print(i)    #(‘2016-01-05‘, ‘BUY‘, ‘RHAT‘, 100.0, 35.14)

原文地址:https://www.cnblogs.com/avention/p/8955130.html

时间: 2024-10-09 13:15:12

8.1 使用Python操作SQLite数据库的相关文章

Python 操作 SQLite 数据库

写在之前 SQLite 是一个小型的关系型数据库,它最大的特点在于不需要单独的服务.零配置.我们在之前讲过的两个数据库,不管是 MySQL 还是 MongoDB,都需要我们安装.安装之后,然后运行起来,其实这就相当于已经有一个相应的服务在跑着. SQLite 与前面所说的两个数据库不同.首先Python 已经将相应的驱动模块作为了标准库的一部分,只要是你安装了 Python,就可以使用:再者它可以类似于操作文件那样来操作 SQLite 数据库文件.还有一点,SQLite 源代码不受版权限制. 建

Python操作SQLite数据库

连接数据库 从2.5版本开始,Python的标准库中就有了一个专门用于SQLite的sqlite3模块.连接SQLite数据库方式如下: import sqlite3 as dbapi con = dbapi.connect('population.db') cur = con.cursor() 第一个语句用于引用数据库API: 第二个语句创建了一个到数据库的连接(connection):调用数据库模块的connect方法.该方法的参数是一个字符串,它定义了我们所要连接的那个数据库.由于SQLi

python 操作sqlite数据库

'''SQLite数据库是一款非常小巧的嵌入式开源数据库软件,也就是说 没有独立的维护进程,所有的维护都来自于程序本身. 在python中,使用sqlite3创建数据库的连接,当我们指定的数据库文件不存在的时候 连接对象会自动创建数据库文件:如果数据库文件已经存在,则连接对象不会再创建 数据库文件,而是直接打开该数据库文件. 连接对象可以是硬盘上面的数据库文件,也可以是建立在内存中的,在内存中的数据库 执行完任何操作后,都不需要提交事务的(commit) 创建在硬盘上面: conn = sqli

用Python进行SQLite数据库操作

用Python进行SQLite数据库操作 -----转自:http://www.cnblogs.com/yuxc/archive/2011/08/18/2143606.html 简单的介绍 SQLite数据库是一款非常小巧的嵌入式开源数据库软件,也就是说没有独立的维护进程,所有的维护都来自于程序本身.它是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了.它能够支持Windows/L

[python]用Python进行SQLite数据库操作

用Python进行SQLite数据库操作 1.导入Python SQLITE数据库模块 Python2.5之后,内置了SQLite3,成为了内置模块,这给我们省了安装的功夫,只需导入即可~ import sqlite3 2. 创建/打开数据库 在调用connect函数的时候,指定库名称,如果指定的数据库存在就直接打开这个数据库,如果不存在就新创建一个再打开. cx = sqlite3.connect("E:/test.db") 也可以创建数据库在内存中. con = sqlite3.c

Windows下安装MySQLdb, Python操作MySQL数据库的增删改查

这里的前提是windows上已经安装了MySQL数据库,且配置完毕,能正常建表能操作.在此基础上只需安装MySQL-python-1.2.4b4.win32-py2.7.exe就ok了,只有1M多.这个有点类似jdbc里的那个jar包. 下载链接:http://sourceforge.net/projects/mysql-python/ , 百度云盘 :http://pan.baidu.com/s/1dDgnfpR 密码:7bna 接着import MySQLdb就能使用了,下面给出测试代码:

js -- 操作sqlite数据库

最近看到一个使用js来操作sqlite数据库的,测试了一下,具体使用的是 js操作类: https://github.com/kripken/sql.js/(sqlite js 驱动) 异步请求:http://npm.taobao.org/package/axios(异步请求插件,只有12.6k) 这里使用的js驱动是和服务器端使用方法一致,sql标准语法都支持,可以用第三方管理工具来管理数据文件 目前我使用的是 Navicat Premium 12. 下面是测试的源代码: 1. 数据库sql(

python操作mysql数据库

连接数据库 输入值 存入数据库 关闭 import string import mysql.connector conn=mysql.connector.connect(user='root',password='test',database='dalian',use_unicode=True) cursor=conn.cursor() a=raw_input('enter an id: ') b=raw_input('enter a name: ') while(a!='quit' or b!

Qt操作Sqlite数据库

总算在Qt中把Sqlite操作成功了,写点总结吧.其实早就弄对了的,但查看数据库就是没有想要的结果.最后发现生成的执行文件在Dbug目录,与先前设定的路径不同,这才恍然大悟. 一.使用到数据库模块,需在pro文件中加入:QT += sql 二.所需数据库操作的相关头文件:#include <QSqlDatabase>#include <QSqlQuery>#include <QSqlRecord>#include <QSqlField> 三.连接Sqlite