使用 Python 在线操作 sqlite3
本节转自https://freeaihub.com/article/sqlite-with-python.html,前往该页可在线进行sqlite数据库的实操。
本节您将通过使用python3内置的sqlite3库,首先连接到数据库,创建并使用游标Cursor,再执行SQL语句,最后提交事务以实现sqlite3数据库中的CRUD新增数据,查询数据,更新数据和删除数据的常用操作。
SQLite是一种嵌入式数据库,它的数据库就是一个文件,SQLite能保存可以保存空值、整数、浮点数、字符串和blob 。sqlite相关教程动手学sqlite。
连接数据库(如果不存在则创建)
import sqlite3
# 连接数据库(如果不存在则创建)
conn = sqlite3.connect('test.db')
print("Opened database successfully")
# 创建游标
cursor = conn.cursor()
# 关闭游标
cursor.close()
# 提交事物
conn.commit()
#关闭游标
cursor.close()
#关闭连接
conn.close()
创建表
import sqlite3
# 连接数据库(如果不存在则创建)
conn = sqlite3.connect('test.db')
# 创建游标
cursor = conn.cursor()
# 创建表
sql = 'CREATE TABLE Student(id integer PRIMARY KEY autoincrement, Name varchar(30), Age integer)'
cursor.execute(sql)
# 提交事物
conn.commit()
#关闭游标
cursor.close()
#关闭连接
conn.close()
插入数据
import sqlite3
# 连接数据库(如果不存在则创建)
conn = sqlite3.connect('test.db')
# 创建游标
cursor = conn.cursor()
# 插入数据1
sql = "INSERT INTO Student(Name, Age) VALUES(\'lucy\', 22)"
cursor.execute(sql)
# 插入数据 2
data = ('jack', 21)
sql = "INSERT INTO Student(Name, Age) VALUES(?, ?)"
cursor.execute(sql, data)
# 提交事物
conn.commit()
#关闭游标
cursor.close()
#关闭连接
conn.close()
更新记录
import sqlite3
# 连接数据库(如果不存在则创建)
conn = sqlite3.connect('test.db')
# 创建游标
cursor = conn.cursor()
cursor.execute("UPDATE Student SET name = ? where id = ?",("lily","3"))
# 提交事物
conn.commit()
#关闭游标
cursor.close()
#关闭连接
conn.close()
删除记录
import sqlite3
# 连接数据库(如果不存在则创建)
conn = sqlite3.connect('test.db')
# 创建游标
cursor = conn.cursor()
cursor.execute("delete from Student where id=?",("1",)) #逗号不能省,元组元素只有一个的时候一定要加逗号,将删除lucy
# 提交事物
conn.commit()
#关闭游标
cursor.close()
#关闭连接
conn.close()
查询数据
import sqlite3
# 连接数据库(如果不存在则创建)
conn = sqlite3.connect('test.db')
# 创建游标
cursor = conn.cursor()
# 查询数据1
sql = "select * from Student"
values = cursor.execute(sql)
for i in values:
print(i)
# 查询数据 2
sql = "select * from Student where id=?"
values = cursor.execute(sql, (1,))
for i in values:
print('id:', i[0])
print('name:', i[1])
print('age:', i[2])
# 提交事物
conn.commit()
#关闭游标
cursor.close()
#关闭连接
conn.close()
删除表格
import sqlite3
# 连接数据库(如果不存在则创建)
conn = sqlite3.connect('test.db')
# 创建游标
cursor = conn.cursor()
#删除表格Student
cursor.execute("DROP TABLE Student")
# 提交事物
conn.commit()
#关闭游标
cursor.close()
#关闭连接
conn.close()
小节
以上我们通过使用sqlite库,在线进行了常规的数据库操作,关于的数据库操作您可以在线查询sqlite3这个库的更多用法。