点击上方蓝字关注我们

基础知识
导入相关模块(SQLite3)
使用connect()连接数据库并获取数据库连接对象。它提供的方法有:
.cursor() #创建一个游标对象
.commit() #处理事务提交
.rollback() #处理事务回滚
.close() #关闭连接
使用con.cursor()可以获取游标对象
使用游标对象的方法(execute()、executemany()、fetchall()等)来操作数据库,实现增删改查等操作
使用close()关闭游标对象和数据库连接。注意:创建时先创建数据库连接再创建游标对象,对应的,关闭时先关闭游标对象再关闭数据库连接

实践练习
# 导入sqlite3模块
import sqlite3
# 创建数据库连接对象
conn = sqlite3.connect('test.db')
# 创建游标对象
cursor = conn.cursor()
# 创建数据表
sql = "CREATE TABLE IF NOT EXISTS test(id INTEGER PRIMARY KEY,name TEXT,age INTEGER)"
cursor.execute(sql)
通过以上操作我们创建了一个名为test.db的数据库文件,数据库中有一个名为test的表,此时表中没有数据。通过数据库管理工具查看数据库结构如下:

# 添加数据
# 方式一:单行数据
data ="1,'张三',20"
cursor.execute("INSERT INTO test VALUES(%s)" % data)
# 方式二:单行数据
cursor.execute("INSERT INTO test VALUES(?,?,?)",(2,'李四',30))
# 方式三:多行数据
cursor.executemany("INSERT INTO test VALUES(?,?,?)",[(3,'王五',40),(4,'赵六',50)])
conn.commit()

# 更新数据
# 方式一:
cursor.execute("UPDATE test SET name=? WHERE id=?",("WANGWU",3))
conn.commit()
# 方式二:
cursor.execute("UPDATE test SET name='王五3' WHERE id=3")
conn.commit()

# 删除数据
# 方式一:
cursor.execute("DELETE FROM test WHERE id=?",(3,))
# 方式二:
cursor.execute("DELETE FROM test WHERE id=4")

# 添加数据多行数据
cursor.executemany("INSERT INTO test VALUES(?,?,?)",[(3,'王五',40),(4,'赵六',50)])
conn.commit()

# 查询所有数据
cursor.execute("SELECT * FROM test")
print(cursor.fetchall())
输出为:

# 查询第一条数据
cursor.execute("SELECT * FROM test")
print(cursor.fetchone())
输出为:

# 查询多行数据
print(cursor.fetchmany(2))
输出为:

# 断开连接
# 关闭游标
cursor.close()
# 关闭数据库连接
conn.close()




扫描二维码获取
更多精彩

点个在看你最好看
文章转载自跟着小白学Python,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




