关于Python操作SQLite数据库
来源:互联网 发布:深圳市网络微课堂 编辑:程序博客网 时间:2024/05/19 15:42
这边先简要的介绍一下SQLite数据库:
SQLite是一种嵌入式数据库,它的数据库就是一个文件。和熟悉的MySQL一样,都是关系型数据库。
SQLite的特点是轻量级、可嵌入,但不能承受高并发访问,适合桌面和移动应用。
要操作关系数据库,首先需要连接到数据库,一个数据库连接称为Connection;
连接到数据库后,需要打开游标,称之为Cursor,通过Cursor执行SQL语句,然后,获得执行结果。
Python内置了sqlite3
import sqlite3
#导入SQLite驱动
conn = sqlite3.connect('test.db')
#连接到SQLite数据库,数据库文件是test.db,如果不存在就会自动在当前目录创建一个
cursor = conn.cursor()
#创建一个游标:cursor
#cursor.execute('drop table user') 删除表
cursor.execute('create table user (id varchar(20) primary key,name varchar(20))')
#执行一条sql语句,这里是创建一个user表,包含两个属性id 和 name
cursor.execute('insert into user (id,name) values(\'1\',\'mike\')')
#继续执行sql语句,这里是插入记录,
cursor.execute('insert into user (id,name) values(\'3\',\'bob\')')
#继续执行sql语句,这里是插入记录,
print(cursor.rowcount)
#这个rowcount查到是影响的行数的意思,究竟什么意思我也还没弄清,望指教!
cursor.close()
#关闭cursor
conn.commit()
#提交事务
conn.close()
#关闭connection
conn2 = sqlite3.connect('test.db')
cursor2 = conn2.cursor()
cursor2.execute('select * from user where name = ?',('bob',))
#执行查询语句
values = cursor2.fetchall()
#select语句执行通过fetchall()拿到结果集,是一个list,每个元素是tuple
print(values)
cursor2.close()
conn2.close()
在Sqlite中根据分数段查找指定的名字,返回指定分数区间的名字,按分数从低到高排序 '
import os,sqlite3
dbFile = os.path.join(os.path.dirname(__file__),'test.db')
if os.path.isfile(dbFile):
os.remove(dbFile)
conn = sqlite3.connect('test.db')
cursor = conn.cursor()
cursor.execute('create table user (id varchar(20) primary key , name varchar(20), score int)')
cursor.execute('insert into user (id,name,score) values(\'A-001\',\'Adam\',\'95\')')
cursor.execute('insert into user (id,name,score) values (\'A-002\',\'Bart\',\'62\')')
cursor.execute('insert into user (id,name,score) values (\'A-003\',\'Lisa\',\'78\')')
cursor.close()
conn.commit()
conn.close()
def getScoreIn(low,high):
conn = sqlite3.connect('test.db')
cursor = conn.cursor()
cursor.execute('select name from user where score between ? and ? order by score',(low,high))
values = cursor.fetchall()
cursor.close()
conn.close()
list2 = []
for i in range(len(values)):
list2.append(values[i][0])
print(list2)
getScoreIn(50,100)
getScoreIn(60,70)
getScoreIn(70,80)
getScoreIn(80,90)
['Bart', 'Lisa', 'Adam']
['Bart']
['Lisa']
[]
- 关于Python操作SQLite数据库
- python SQlite数据库操作
- Python 操作SQLite数据库
- Python操作SQLite数据库
- Python 操作sqlite数据库
- python操作sqlite数据库
- Python:操作嵌入式数据库SQLite
- Python操作数据库SQLite --------2
- python操作内置Sqlite数据库
- python SQLite数据库简单操作
- Python进行SQLite数据库操作
- python数据库操作-MySQL,SQLite
- python基础学习-python操作sqlite数据库
- Python SQLITE数据库操作简便易用
- Python SQLITE数据库操作简便易用
- Python SQLITE数据库操作简便易用
- 用Python进行SQLite数据库操作
- 用Python进行SQLite数据库操作
- sublime Text快捷键(超级全)
- 插入排序-直接插入排序
- 浅谈Android动画(一)
- Hadoop-MapReduce之WordCount的实现
- The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path的解决方法
- 关于Python操作SQLite数据库
- 关于 DataSnap Rest Api 方法的定义
- Java中的Set集合
- 精选30道Java笔试题解答
- ABP官方文档(一)【入门介绍】
- POJ 1163
- 第八周 项目二 建立链串的算法库
- LeetCode 19. Remove Nth Node From End of List
- js对象