Python模块之操作数据库SQLite篇

一、基础操作

1、连接对象connect()函数

2、游标对象cursor()

二、创建数据库文件

三、操作SQLite

1、新增数据

2、查看数据信息

3、修改数据

4、删除数据

一、基础操作

connect()函数常用参数及说明

参数说明dsn数据源名称user用户名password用户密码host主机名database数据库名称

连接对象方法

方法名说明close()关闭数据库连接commit()提交事务rollback()回滚事务cursor()获取游标对象

通过使用连接对象的cursor()方法,获取游标对象。

游标对象方法

方法名说明callproc(procname[,parameters])调用存储过程,需要数据库支持close()关闭游标execute(operation[,parameters])执行数据库操作,SQL语句executemany(operation,seq_of_params)批量操作fetchone()获取查询结果集中的第一条记录fetchmany(size)获取指定数量的记录fetchall()获取所有记录nextset()跳至下一个可用的结果集setinputsizes(sizes)设置在调用execute*()方法时分配的内存大小setoutputsizes(sizes)设置列缓冲区大小

二、创建数据库文件

Python内置了SQLite3,所以可以直接import导入SQLite3模块。

#导入数据库模块
import sqlite3
#连接数据库,如果不存在,则自动创建
conn=sqlite3.connect('mrsoft.db')
#创建游标
cur=conn.cursor()
#执行SQL语句,创建表
cur.execute('create table user(id int(10) primary key, name varchar(20))')
#关闭游标
cur.close()
#断开数据库连接
conn.close()

三、操作SQLite

SQL语句:

inser into 表名(字段名1,字段名2,…,字段名n) values (字段值1,字段值2,…字段值n)

字段值需要根据字段的数据类型来赋值。

#导入数据库模块
import sqlite3
#连接数据库,如果不存在,则自动创建
conn=sqlite3.connect('mrsoft.db')
#创建游标
cur=conn.cursor()
#执行SQL语句,插入数据
cur.execute('insert into user (id,name) values ("1","MRSOFT")')
#关闭游标
cur.close()
#提交事务。对于增加、修改和删除操作,使用commit()方法提交事务,如果相应操作失败,可以回滚到操作之前的状态。
conn.commit()
#断开数据库连接
conn.close()

SQL语句:

select 字段名 from 表面 where 查询条件

#导入数据库模块
import sqlite3
#连接数据库,如果不存在,则自动创建
conn=sqlite3.connect('mrsoft.db')
#创建游标
cur=conn.cursor()

#执行SQL语句,查询数据
#cur.execute('select * from user')
#获取查询结果
#方式一:
#res1=cur.fetchone()
#print(res1)
#--->(1, 'MRSOFT')
#方式二:
#res2=cur.fetchmany(2)
#print(res2)
#--->[(2, 'Andy'), (3, '明日科技')]
#方式三:
#res3=cur.fetchall()
#print(res3)
#--->[(1, 'MRSOFT'), (2, 'Andy'), (3, '明日科技')]

#执行SQL语句,条件查询数据
#使用问号作为占位符,然后使用元组来替换问号(注意:不要忽略元组中最后的逗号)
#使用占位符的方式可以避免SQL注入的风险
cur.execute('select * from user where id>?',(1,))
res3=cur.fetchall()
print(res3)
#--->[(2, 'Andy'), (3, '明日科技')]

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

SQL语句:

update 表名 set 字段名=字段值 where 条件

#导入数据库模块
import sqlite3
#连接数据库,如果不存在,则自动创建
conn=sqlite3.connect('mrsoft.db')
#创建游标
cur=conn.cursor()
#修改数据
cur.execute('update user set name=? where id=?',('MR',1))
#查询修改后的数据
cur.execute('select * from user')
res=cur.fetchall()
print(res)
#关闭游标
cur.close()
#提交事务
conn.commit()
#断开数据库连接
conn.close()

SQL语句:

delete from 表名 where 条件

#导入数据库模块
import sqlite3
#连接数据库,如果不存在,则自动创建
conn=sqlite3.connect('mrsoft.db')
#创建游标
cur=conn.cursor()

#删除数据
cur.execute('delete from user where id=?',(1,))
cur.execute('select * from user')
res=cur.fetchall()
print(res)
#关闭游标
cur.close()
#提交事务
conn.commit()
#断开数据库连接
conn.close()

Original: https://blog.csdn.net/m0_64336020/article/details/122283922
Author: python-小卒
Title: Python模块之操作数据库SQLite篇

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/815939/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球