python sqlite3建表增删改查
数据库编程
操作SQLite3 数据库
从Python3.x版本开始,标准库内置 SQLite3 模块
使用connect()连接数据库并获取数据库对象
.cursor() 方法来创建一个游标对象
.commit() 方法来处理事务提交
.rollback() 方法来处理事务回滚
.close() 方法来关闭一个数据库连接
使用con.cursor() 获取游标对象
使用游标对象的方法
execute()、executemany()、fetchall() 来操作数据库实现插入,修改,删除操作
连接函数sqlite3.connect()
database: 表示要访问的数据库名
timeout: 表示访问超时设定
close() 关闭数据库连接
使用SQLite3 创建表
con=sqlite3.connect(’./demo.db’)
创建表_示例:
# 导入sqlite3 模块
import sqlite3
# 创建连接
con = sqlite3.connect('./demo.db')
# 获取 cursor 对象
cur = con.cursor()
# 执行sql创建表
sql = '''
create table t_person
(
pno INTEGER PRIMARY KEY AUTOINCREMENT,
pname varchar(30) NOT NULL,
age INTEGER
)
'''
try:
cur.execute(sql)
print('创建表成功')
except Exception as e:
print(e)
print('创建表失败')
finally:
# 关闭游标
cur.close()
# 关闭连接
con.close()
插入表数据_示例:
# 导入模块
import sqlite3
# 创建连接
con=sqlite3.connect('./demo.db')
# 创建游标对象
cur=con.cursor()
# 编写插入sql
sql='''
insert into t_person(pname,age) values(?,?)
'''
try:
# 执行sql
cur.execute(sql,('张三',24))
#提交事务
con.commit()
print('插入数据成功')
except Exception as e:
print(e)
con.rollback()
print('插入数据失败')
finally:
# 关闭游标连接
cur.close()
# 关闭数据库连接
con.close()
插入多条表数据_示例:
# 导入模块
import sqlite3
# 创建连接
con=sqlite3.connect('./demo.db')
# 创建游标对象
cur=con.cursor()
# 编写插入sql
sql='''
insert into t_person(pname,age) values(?,?)
'''
try:
# 执行插入多条数据的sql
cur.executemany(sql, [('小李',23),('小红',18),('小明',25)])
#提交事务
con.commit()
print('插入多条数据成功')
except Exception as e:
print(e)
con.rollback()
print('插入多条数据失败')
finally:
# 关闭游标连接
cur.close()
# 关闭数据库连接
con.close()
查询所有表数据_示例:
# 导入模块
import sqlite3
# 创建连接
con=sqlite3.connect('./demo.db')
# 创建游标对象
cur=con.cursor()
# 编写查询sql
sql='''
select * from t_person
'''
try:
# 执行sql
cur.execute(sql)
# 获取结果集
person_all = cur.fetchall()
#print(person_all) # 元组
for person in person_all:
print(person)
print('查询数据成功')
except Exception as e:
print(e)
con.rollback()
print('查询所有数据失败')
finally:
# 关闭游标连接
cur.close()
# 关闭数据库连接
con.close()
查询表一条数据_示例:
# # 获取一条数据
import sqlite3
# 创建连接
con=sqlite3.connect('./demo.db')
# 创建游标对象
cur=con.cursor()
# 编写查询sql
sql='''
select * from t_person
'''
try:
# 执行sql
cur.execute(sql)
person=cur.fetchone()
print(person)
except Exception as e:
print(e)
con.rollback()
print('查询所有数据失败')
finally:
# 关闭游标连接
cur.close()
# 关闭数据库连接
con.close()
修改表数据_示例:
# 修改数据
import sqlite3
# 创建连接
con=sqlite3.connect('./demo.db')
# 创建游标对象
cur=con.cursor()
# 编写修改sql语句
sql='''
update t_person set pname=? where pno=?
'''
try:
# 执行sql
cur.execute(sql,('小张',1))
# 提交事务
con.commit()
print('修改成功')
except Exception as e:
print(e)
con.rollback()
print('修改失败')
finally:
# 关闭游标连接
cur.close()
# 关闭数据库连接
con.close()
删除表数据_示例:
# 删除数据
import sqlite3
# 创建连接
con=sqlite3.connect('./demo.db')
# 创建游标对象
cur=con.cursor()
# 编写修改sql语句
sql='''
delete from t_person where pno=?
'''
try:
# 执行sql
cur.execute(sql,(1,))
# 提交事务
con.commit()
print('删除成功')
except Exception as e:
print(e)
con.rollback()
print('删除失败')
finally:
# 关闭游标连接
cur.close()
# 关闭数据库连接
con.close()
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhfhbgih
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01