python下MySQLdb用法实例分析

yizhihongxing

Python下MySQLdb用法实例分析

介绍

MySQLdb 是python下操作 MySQL 数据库的一种常用的模块。它是 Python 中连接 MySQL 最流行的模块之一。本文将介绍 MySQLdb 的用法,并给出使用示例。

安装

使用 pip 命令安装:

pip install MySQL-python

连接数据库

连接 MySQL 数据库的方法如下:

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect(host="localhost", user="root", passwd="root", db="test", charset="utf8")

# 获取游标
cursor = db.cursor()

其中,有几个参数需要说明一下:

  • host:连接的mysql主机名
  • user:mysql用户名
  • passwd:mysql密码
  • db:要连接的数据库名
  • charset:设置字符集编码

连接成功后,如果想关闭游标和数据库连接,请分别使用 cursor.close()db.close() 方法。

执行 SQL 语句

可以使用 execute() 方法执行 SQL 语句,例如:

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect(host="localhost", user="root", passwd="root", db="test", charset="utf8")

# 获取游标
cursor = db.cursor()

# SQL 语句
sql = "SELECT * FROM employee WHERE income > '%d'" % (1000)

# 执行 SQL 语句
cursor.execute(sql)

# 获取所有记录列表
results = cursor.fetchall()
for row in results:
    fname = row[0]
    lname = row[1]
    age = row[2]
    sex = row[3]
    income = row[4]

    # 打印结果
    print("fname=%s,lname=%s,age=%d,sex=%s,income=%d" % (fname, lname, age, sex, income))

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

在这个例子中,我们首先执行了一条 select 语句,并通过 fetchall() 方法获得了所有的结果,然后通过 for 循环逐一遍历每一行的数据,最后打印出结果。值得注意的是,这里使用了字符串格式化的方式将参数传入 SQL 语句中。

还可以使用 executemany() 方法执行多条 SQL 语句:

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect(host="localhost", user="root", passwd="root", db="test", charset="utf8")

# 获取游标
cursor = db.cursor()

# SQL 语句
sql = "INSERT INTO employee (FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) VALUES (%s, %s, %s, %s, %s)"
val = [
    ('John', 'Doe', 28, 'M', 2000),
    ('Jane', 'Doe', 25, 'F', 2500),
    ('Tom', 'R', 32, 'M', 3000),
]

# 多次执行 SQL 语句
cursor.executemany(sql, val)

# 提交修改
db.commit()

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

在这个例子中,我们执行了多条 INSERT 语句,并将每一条语句的参数使用列表的方式传入 executemany() 方法中,从而一次性执行多条 SQL 语句。最后需要调用 commit() 方法提交修改。

总结

到这里,我们已经介绍了 MySQLdb 的基本用法,包括连接数据库和执行 SQL 语句。以上是两个最基本的示例,实际应用中还有很多其他的方法和用法。如果需要更深入的了解,请查看 MySQLdb 的官方文档。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python下MySQLdb用法实例分析 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • IronPython连接MySQL的方法步骤

    以下是”IronPython连接MySQL的方法步骤”的详细讲解。 环境准备 在开始之前,您需要事先准备以下环境: 安装 IronPython 运行环境,IronPython 支持 .NET Framework 4.0 或更高版本。 安装 MySQL 数据库,并创建测试表(例如 employee)和数据(例如 id=1, name=’Alice’)。 步骤 …

    python 2023年5月31日
    00
  • python-xpath获取html文档的部分内容

    Python-XPath获取HTML文档的部分内容 在本文中,我们将介绍如何使用Python和XPath从HTML文档中获取部分内容。XPath是一种用于在XML和HTML文档中选择元素的语言。我们将提供两个示例,以帮助读者更好地理解如何实现这个目标。 步骤1:安装必要的库 在使用Python和XPath获取HTML文档的部分内容之前,我们需要安装必要的库。…

    python 2023年5月15日
    00
  • 10个易被忽视但应掌握的Python基本用法

    10个易被忽视但应掌握的Python基本用法 Python 是一门非常强大的编程语言,除了常用的语法和库,还有一些常被忽视但非常实用的基本用法,下面是 10 个这样的用法: 1. 列表推导式 列表推导式是快速生成列表的方法,例如,我们可以使用以下代码生成一个包含从 0 到 9 的整数的列表: number_list = [num for num in ran…

    python 2023年5月13日
    00
  • 浅谈matplotlib中FigureCanvasXAgg的用法

    我们来详细讲解一下“浅谈matplotlib中FigureCanvasXAgg的用法”。 1. 什么是FigureCanvasXAgg 在matplotlib中,FigureCanvas是图形的绘制场所,它可以是一个屏幕、一个文件(PDF、SVG等)或者其他任何能够显示图形的设备。而FigureCanvasXAgg,则是指一个基于agg渲染器的具有交互功能的…

    python 2023年5月18日
    00
  • python实现邻接表转邻接矩阵

    具体实现邻接表转邻接矩阵的过程,可以分为以下几个步骤: 第一步,定义邻接表 首先需要定义一个邻接表,一般来说邻接表是一个字典类型,字典的每一个键表示图中的一个节点,而该键对应的值则是与该节点相邻的所有节点。 例如,我们可以使用如下的邻接表表示一个简单无向图: adj_list = { ‘A’: [‘B’, ‘C’], ‘B’: [‘A’, ‘C’, ‘D’]…

    python 2023年6月3日
    00
  • Python数据结构之队列详解

    Python数据结构之队列详解 队列是一种常用的数据结构,它遵循先进先出(FIFO)的原则,即先进入队列的元素先被取出。在Python中,我们可以使用列表或deque模块来实现队列。在本攻略中,我们将介绍队列的基本概念、实现方法和常用操作,并提供两个示例来说明如何使用队列进行数据处理。 队列的基本概念 队列是一种线性数据结构,它包含两个基本操作:入队和出队。…

    python 2023年5月14日
    00
  • Python整数类型(int)详解

    Python中的整数类型 在数学中,整数就是正整数、零、负整数的集合。在Python中,对于整数的定义也与此相同。 强类型编程语言的整数,一般会限定整数长度,以分配不同的存储空间。因此整数类型的声明关键字会有:short、int、long、long long等,它们的长度依次递增,开发者需要根据实际数字的大小选用不同的类型。 而Python则不同,它只有一种…

    2022年11月20日
    00
  • 详解python 破解网站反爬虫的两种简单方法

    详解python 破解网站反爬虫的两种简单方法 简介 在爬取网站数据的过程中,经常会遇到网站反爬虫的情况,例如:IP封禁、UA检测、验证码等。本文将讨论两种简单的python破解网站反爬虫的方法。 方法一:伪装UA 部分网站反爬虫机制是检测爬虫的User-Agent,所以我们可以用伪装的方式进行欺骗。 示例代码: import requests url = …

    python 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部