文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

pymysql的使用超详细

2023-08-18 18:14

关注

一、安装pymysql

在控制台输入如下代码安装pymysql

pip install pymysql

二、使用步骤

(1)导包

当然需要导包啦,输入如下代码开始导包

import pymysql

(2)连接数据库

pymyql使用的是connect来连接数据库,我们常用的参数及介绍如下

类型参数名数据类型说明(数据库)一般默认值
必要hoststr数据库域名或IP地址127.0.0.1/localhost
必要portint端口号3306
必要userstr用户名root
必要passwd/passwordstr密码
必要database(db)str需要连接的数据库名(你的数据库名字叫什么就是什么)db1
非必要charsetstr编码类型utf8

一般代码形式如下:

可按需求修改,有问题可看结尾的常见问题

db=pymysql.connect(    #本机使用localhost,服务器使用ip地址    host='localhost',    #用户名,如变动请按变动后修改    user='root',    #密码,如变动请按变动后修改    password='123456',    #数据库名,如变动请按变动后修改    database='db1')

(3)创建游标

游标可以想象成数据库中的指针,对表的操作可以让它一行一行的向下运动,让数据不断向下填充,创建游标的代码如下:

注:db为连接数据库对象

cursor = db.cursor()

(4)操作数据库

通用操作数据库语句,可执行增,删,改,查等数据库操作

cursor为游标对象

cursor.execute('sql语句')

下面介绍具体使用方法

①添加数据【增】

添加数据库有两种操作语句

  1. execute():它为一条一条记录的添加,当面对较大数据量的时候速度很慢

    cursor.execute('sql语句')
  2. executemany():批量添加多条记录

    cursor.executemany('sql',要插入的数据[列表])

添加数据时我们需使用提交语句提交给数据库:

注:db为连接数据库对象

db.commit()

为了处理异常我们对其添加异常处理方法,有错误使用下列语句,对事务进行回滚:

db.rollback()

execute()具体代码如下,可直接使用

sql='sql语句【添加】'try:   # 执行sql语句   cursor.execute(sql)   # 提交执行   db.commit()except:   # 有错误则回滚   db.rollback()

executemany()具体代码如下,可直接使用

sql='...前面省略后面为values(%s,%s,%s,%s)'try:    cursor.executemany(sql,data)    # 提交事务    db.commit()except:    # 发生错误回滚    db.rollback()db.close()

②删除/修改数据【删/改】

添加数据时我们需使用提交语句提交给数据库:

注:db为连接数据库对象

db.commit()

为了处理异常我们对其添加异常处理方法,有错误使用下列语句,对事务进行回滚:

db.rollback()

具体代码如下,可直接使用

sql='sql语句【添加】'try:   # 执行sql语句   cursor.execute(sql)   # 提交执行   db.commit()except:   # 有错误则回滚   db.rollback()

③查询数据

因为查询数据需要返回值,所以我们单拿出来讲

查询数据时我们需使用获取返回值语句得到返回值,返回值语句有三种:

为了处理异常我们对其添加异常处理方法,有错误使用下列语句,对事务进行回滚:

db.rollback()

具体代码如下,可直接使用

sql='sql语句【查询语句】'try:   # 执行sql语句   cursor.execute(sql)   #接收返回值可按需求使用fetchone()\fetchall()\rowcount语句接收results = cursor.fetchall()    #输出结果    print(results)except:   # 没有结果输出   print('没有结果')

(5)关闭连接

关闭连接记住一句话,创建了几个对象,关闭几个对象,先创建的后关闭,后创建的先关闭

关闭连接语句为:

对象.close()

如上,我首先创建了连接对象db,然后创建了游标对象cursor,我们需要先关闭游标对象,再关闭连接对象

# 关闭游标对象cursor.close()# 关闭数据库连接db.close()

pymysql总结

到这里我们的pymysql就已经讲完了,总结一下。我们连接数据库需要如下几个步骤,缺一不可。

  1. 导包
  2. 创建数据库连接对象
  3. 创建游标对象
  4. 操作数据库
  5. 关闭连接

三、常见问题

1)不知道ip地址

(1)window

①win+r打开控制台

②在控制台中输入如下命令,然后回车,查看Ipv4地址即可

ipconfig

(2)Linux

①登录root用户

②打开控制台

③在控制台输入如下命令,并找到inet可查看ip地址

ifconfig -a

(3)max

①进入系统偏好设置

②进入网络

③进入以太网可查看ip地址

2)忘记用户名

①打开mysql的控制台,如果已经配置环境变量的可以直接使用cmd控制台输入如下命令然后回车进入mysql

mysql -u root -p

②在mysql中输入如下命令可查看用户名

select user,host from mysql.user;

3)忘记密码了怎么办

①在cmd控制台输入如下命令关闭mysql服务

net stop mysql

②使用如下命令启动mysql服务(服务器会不加载权限判断,任何用户都能访问数据库)注:命令运行之后,用户无法再输入指令

mysqld --skip-grant-tables

③打开新的命令行窗口,输入不加密码的登录命令

mysql -u root

④登录成功后可以使用update语句修改密码

⑤修改完成后使用flush privileges语句刷新权限表

⑥输入如下命令的命令行窗口关闭

mysqld --skip-grant-tables

4)不知道/忘记数据库名

①打开mysql的控制台,如果已经配置环境变量的可以直接使用cmd控制台输入如下命令然后回车进入mysql,并输入密码进入mysql服务器

mysql -u root -p

②输入下列指令查询所有数据库

show databases;

5)数据库一般操作

来源地址:https://blog.csdn.net/m0_54722399/article/details/128715439

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯