《python从入门到项目实践》第15章 使用Python操作数据库

目录

 

连接对象

游标对象 Cursor Object

使用 SQLite 

使用 SQLite 

连接对象

主要提供获取数据库游标对象和提交/回滚事务的方法,以及如何关闭数据库连接

获取连接对象 connect() 

使用 PyMySQL 模块连接 MySQL 数据库:

import pymysql
conn = pymysql.connect(host='localhost',
                          user='user',
                          password='passwd',
                          db='test',
                          charset='utf8',
                          cursorclass=pymysql.cursors.DictCursor)

游标对象 Cursor Object

代表数据库中的游标,用于指示抓取数据操作的上下文。主要提供执行SQL语句、调用存储过程、获取查询结果等方法

使用 SQLite 

python 内置了SQLite3,直接导入模块

创建一个名称为 mrsoft.db 的SQLite 数据库文件,然后执行SQL 语句创建一个 user(用户表),user表包含id和name两个字段。

import sqlite3
# 连接到SQLite数据库
# 数据库文件是mrsoft.db,如果文件不存在,会自动在当前目录创建
conn = sqlite3.connect('mrsoft.db')
# 创建一个Cursor
cursor = conn.cursor()
# 执行一条SQL语句,创建user表
cursor.execute('create  table  user (id int(10)  primary key, name varchar(20))')
# 关闭游标
cursor.close()
# 关闭Connection
conn.close()

该代码只能运行一次,再次运行会提示错误。

使用 SQLite 

新增用户信息

insert into 表名(字段名1,字段名2,...,字段名n) values(字段值1,字段值2,...,字段值n)

例如,在 user 表中,有两个字段,字段名称为id和name。而字符值需要根据字段的数据类型来赋值,如id是一个长度为10的整形,name是长度为20的字符串型数据。向user表中插入1条用户信息记录,则SQL语句如下:

 cursor.execute('insert into user(id, name) values ("1","MRSOFT)')

查看用户信息

select 字段名1,字段名2,...from 表名 where 查询条件

# 执行查询语句
cursor.execute('select * from user')
# 获取查询结果
result1 = cursor.fetchone()
result2 = cursor.fetchmany(2)  # 使用fetchmany方法查询多条数据
print(result2)
result3 = cursor.fetchall()    # 使用fetchmany方法查询多条数据
print(result3)

或者

import sqlite3
cursor.execute('select * from user where id > ?',(1,))
result3 = cursor.fetchall()
print(result3)

修改用户数据信息

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

#创建一个Cursor:
cursor = conn.cursor()
cursor.execute('update user set name = ? where id = ?',('MR',1))

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值