如何使用Python连接和操作MySQL数据库?

yizhihongxing

在Python中,可以使用mysql-connector-python模块连接和操作MySQL数据库。以下是Python使用mysql-connector-python模块连接和操作MySQL数据库的完整攻略,包括连接MySQL数据库、表、插入数据、查询数据更新数据、删除数据等操作。

连接MySQL数据库

在Python中,可以使用mysql-connector-python模块连接MySQL数据库。以下是连接MySQL数据库的基本语法:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  password="yourpassword",
  database="mydatabase"
)

在上面的语法中,localhost是MySQL服务器的主机名,yourusername是数据库的用户名,yourpassword是连接数据库的密码,mydatabase是要连接的数据库名称。

创建表

在MySQL中,可以使用CREATE TABLE语句创建表。以下是创建表的基本语法:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
 ="yourusername",
  password="yourpassword",
  database="mydatabase"
)

mycursor = mydb.cursor()

mycursor.execute("CREATE TABLE customers (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), address VARCHAR(255))")

在上面的语法中,mycursor.execute()方法用于执行SQL语句,customers是要创建的表名,id``nameaddress是表的列名。

插入数据

在MySQL中,使用INSERT INTO语句插入数据。以下是插入数据的基本语法:

import mysql.connector

mydb = mysql.connect(
  host="localhost",
  user="yourusername",
  password="yourpassword",
  database="mydatabase"
)

mycursor = mydb.cursor()

# 插入一条数据
sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
val = ("John", "Highway 21")
mycursor.execute(sql, val)

# 插入多条数据
sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
val = [
  ("Peter", "Lowstreet 4"),
  ("Amy", "Apple st 652"),
  ("Hannah", "Mountain 21"),
  ("Michael", "Valley 345")
]
mycursor.executemany(sql, val)

# 提交更改
mydb.commit()

在上面的语法中,mycursor.execute()方法用于插入一条数据,mycursor.executemany()方法用于插多条数据,mydb.commit()方法于提交更改。

查询数据

在MySQL中,可以使用SELECT语句查询数据。以下是查询数据的基本语法:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  password="yourpassword",
  database="mydatabase"
)

mycursor = mydb.cursor()

# 查询所有数据
mycursor.execute("SELECT * FROM customers")
myresult = mycursor.fetchall()

# 查询指定条件的数据
sql = "SELECT * FROM customers WHERE address = %s"
adr = ("Highway 21", )
mycursor.execute(sql, adr)
myresult = mycursor.fetchall()

在上面的语法中,mycursor.execute()方法用于执行查询,mycursor.fetchall()方法用于获取查询结果。

更新数据

在MySQL中,可以使用UPDATE语句更新数据以下是更新数据的基本语法:

 mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  password="yourpassword",
  database="mydatabase"
)

mycursor = mydb.cursor()

# 更新数据sql = "UPDATE customers SET address = %s WHERE name = %s"
val = ("Valley 345", "Michael")
mycursor.execute(sql, val)

# 提交更改
mydb.commit()

在上面的语法中,mycursor.execute()方法用于更新数据,mydb.commit()方法用于提交更改。

删除数据

在MySQL中,可以使用DELETE语删除。以下是删除数据的基本语法:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  password="yourpassword",
  database="mydatabase"
)

mycursor = mydb.cursor()

# 删除数据
sql = "DELETE FROM customers WHERE address = %s"
adr = ("Mountain 21", )
mycursor.execute(sql, adr)

# 提交更改
mydb.commit()

在上面的语法中,mycursor.execute()方法用于删除数据,mydb.commit()方法用于提交改。

示例1

这个示例中,我们将使用Python连接到MySQL数据库,并创建一个表,然后插入一些数据查询所有数据并打印结果。

以下是Python代码:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  password="yourpassword",
  database="mydatabase"
)

mycursor = mydb.cursor()

# 创建表
mycursor.execute("CREATE TABLE customers (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), address VARCHAR(255))")

# 插入数据
sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
val = ("John", "Highway 21")
mycursor.execute(sql, val)

# 查询所有数据
mycursor.execute("SELECT * FROM customers")
myresult = mycursor.fetchall()

# 打印查询结果
for x in myresult:
  print(x)

在上面的代码中,我们使用mysql-connector-python模块连接到MySQL数据库。然后,我们使用mycursor.execute()方法创建一个表,使用mycursor.execute方法插入一条数据。最后,我们使用mycursor.fetchall()方法获取查询结果,使用for循环遍每一行,并使用print()`函数打印每一行。

示例2

在这个示例中,我们将使用Python连接到MySQL数据库,并更新一些数据,然后查询指定条件的数据并打印结果。

以下是Python代码:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  password="yourpassword",
  database="mydatabase"
)

mycursor = mydb.cursor()

# 更新数据
sql = "UPDATE customers SET address = %s WHERE name = %s"
val = ("Valley 345", "Michael")
mycursor.execute(sql, val)

# 查询指定条件的数据
sql = "SELECT * FROM customers WHERE address = %s"
adr = ("Valley 345",mycursor.execute(sql, adr)
myresult = mycursor.fetchall()

# 打印查询结果
for x in myresult:
  print(x)

在上面的代码中,我们使用mysql-connector-python模块连接到MySQL数据库。然后,我们使用mycursor.execute()方法更新一条数据。最后,我们使用mycursor.fetchall()方法获取查询结果,使用for循环遍历每一行,并使用print()函数打印每一行。

以上是使用连接和操作MySQL数据库的完整攻略,包括连接MySQL数据库、创建表、插入数据查询数据、更新数据和数据等操作。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:如何使用Python连接和操作MySQL数据库? - Python技术站

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

相关文章

  • Python的位置参数是什么?

    在 Python 中,位置参数是一种函数参数的类型,它们根据它们在函数定义中的位置来接收传递给函数的值。 位置参数是最常用的参数类型。当我们定义一个函数时,我们可以指定多个参数,其中一些是位置参数。位置参数的值是按照它们在函数调用中出现的顺序来传递的。例如,下面是一个带有两个位置参数的函数: def add_numbers(a, b): return a +…

    2023年2月20日
    00
  • 基于Python实现西西成语接龙小助手

    西西成语接龙小助手是一个基于Python实现的小工具,可以帮助用户进行成语接龙游戏。本攻略将介绍西西成语接龙小助手的实现过程,包括数据获取、数据处理、游戏逻辑和示例。 步骤1:获取成语数据 在Python中,我们可以使用requests库获取成语数据。以下是获取成语数据的示例代码: import requests url = ‘https://www.xix…

    python 2023年5月15日
    00
  • python基于爬虫+django,打造个性化API接口

    Python基于爬虫+Django,打造个性化API接口攻略 1. 爬虫部分 安装Python和必要的依赖库 爬虫部分需要用到Python,我们可以从Python官网下载安装包,安装到本地环境。此外,还需要安装一些必要的依赖库,比如requests、BeautifulSoup等等。可以使用pip命令进行安装,如: pip install requests p…

    python 2023年5月14日
    00
  • python中如何使用insert函数

    当需要在Python列表中插入新元素时,可以使用insert()函数。insert()函数可以将指定的元素插入到指定的位置前面,其他元素自动往后顺移。下面是使用insert()函数的详细攻略: 插入单个元素 下面是insert()函数的语法: list.insert(index, element) 其中,index 表示要插入的位置,element 表示要插…

    python 2023年6月3日
    00
  • Python 常用模块 re 使用方法详解

    以下是详细讲解“Python常用模块re使用方法详解”的完整攻略,包括re模块的介绍、常用函数的使用方法、示例说明和注意事项。 re模块的介绍 re模块是Python中用正则表达式操作的标准库,提供了一系列函数用于对字符串进行匹配、查找、替换等操作。使用re模可以方便地处理各种字符串操作。 常用函数的使用方法 re.search() re.search()函…

    python 2023年5月14日
    00
  • 基于Python的接口测试框架实例

    在Python中,我们可以使用接口测试框架进行接口测试。本文将介绍如何基于Python实现接口测试框架,并提供两个示例。 1. 使用unittest框架进行接口测试 我们可以使用unittest框架进行接口测试。以下是一个示例,演示如何使用unittest框架进行接口测试: import unittest import requests class Test…

    python 2023年5月15日
    00
  • Python爬虫框架Scrapy实战之批量抓取招聘信息

    Python爬虫框架Scrapy实战之批量抓取招聘信息 本文旨在详细讲解如何使用Python爬虫框架Scrapy来批量抓取招聘信息网站上的信息。整个流程可以分为如下几个步骤: 制定爬虫计划及定义Item 编写Spider 编写Item Pipeline 运行爬虫 1. 制定爬虫计划及定义Item 在开始编写Spider之前,我们需要先确定我们要抓取哪些信息。…

    python 2023年5月14日
    00
  • python实现k-means聚类算法

    当然,我非常乐意给大家分享一篇关于Python实现K-Means聚类算法的完整攻略。让我们开始吧! 什么是K-Means聚类算法? K-Means聚类算法是一种无监督学习算法,它根据不同数据点之间的相似性将其归为不同的簇。聚类的目的是将数据点分为具有相似特征的组,从而打破数据的孤岛。 K-Means算法是一个迭代过程,通过在数据集中找到重心,将数据点分配到最…

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