Python写入MySQL数据库的三种方式详解

Python是一种广泛应用的语言,常用于数据分析和处理,而MySQL是一种成熟、稳定、高效的关系型数据库,Python与MySQL结合使用,可以实现完整的数据处理流程。在本文中,我们将详细讲解Python写入MySQL数据库的三种方式。

1. 使用Python MySQL Connector库

通过Python MySQL Connector库可以实现Python与MySQL数据库的连接,并对数据库进行增、删、改、查 等操作。

以下是Python写入MySQL数据库的示例代码:

import mysql.connector

# 连接数据库
mydb = mysql.connector.connect(
  host="localhost",
  user="root",
  password="123456",
  database="mydatabase"
)

# 新建游标
mycursor = mydb.cursor()

# 执行SQL语句
sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
val = ("John", "Highway 21")
mycursor.execute(sql, val)

# 提交到数据库
mydb.commit()

# 输出插入数据的行数
print(mycursor.rowcount, "record inserted.")

在上述代码中,我们首先通过MySQL Connector库连接数据库,然后新建游标,执行INSERT语句,并将数据提交到数据库。在每次执行数据库操作时,都需要先进行连接,创建游标,并在完成使用后关闭连接。

2. 使用pymysql库

pymysql是python的一个用于连接MySQL数据库的第三方库,与mysql-connector-python库类似,它也能够实现Python连接MySQL数据库并对数据库进行增、删、改、查等操作。

以下是Python写入MySQL数据库的示例代码:

import pymysql

# 连接数据库
mydb = pymysql.connect(
  host="localhost",
  user="root",
  password="123456",
  database="mydatabase"
)

# 新建游标
mycursor = mydb.cursor()

# 执行SQL语句
sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
val = ("John", "Highway 21")
mycursor.execute(sql, val)

# 提交到数据库
mydb.commit()

# 输出插入数据的行数
print(mycursor.rowcount, "record inserted.")

在上述代码中,我们首先通过pymysql库连接数据库,在完成增、删、改、查操作后,同样需要对连接关闭。

3. 使用SQLAlchemy库

SQLAlchemy是Python的一个最流行的ORM(Object-Relational Mapping)库,可以将Python中的对象映射到数据库中的记录,并且能够自动生成SQL语句。

以下是Python写入MySQL数据库的示例代码:

from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker

# 连接数据库
engine = create_engine('mysql+pymysql://root:123456@localhost/mydatabase')
Base = declarative_base()

# 创建数据表类
class Customer(Base):
    __tablename__ = 'customers'
    id = Column(Integer, primary_key=True)
    name = Column(String(50))
    address = Column(String(50))

# 创建Session
Session = sessionmaker(bind=engine)
session = Session()

# 插入数据
customer = Customer(name='John', address='Highway 21')
session.add(customer)
session.commit()

# 输出插入数据的id
print('customer id:', customer.id)

在上述代码中,我们首先使用SQLAlchemy中的create_engine()方法连接数据库,然后使用declarative_base()方法基于声明式创建数据表类,并使用sessionmaker()方法创建Session,再执行插入数据操作,并提交数据。最后输出插入数据的id。

通过以上三种方式,我们可以轻松实现Python写入MySQL数据库的功能,具体实现方式根据实际需求选择即可。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python写入MySQL数据库的三种方式详解 - Python技术站

(0)
上一篇 2023年6月3日
下一篇 2023年6月3日

相关文章

  • Python调用系统命令的四种方法详解(os.system、os.popen、commands、subprocess)

    Python调用系统命令的四种方法详解 在Python程序中,有时候需要调用系统命令来完成一些特定的任务。这篇文章将介绍Python调用系统命令的四种方法:os.system、os.popen、commands、subprocess。我们将会学习每一种方法的特点和使用场景,并且提供具体的示例代码。 1. os.system os.system(command…

    python 2023年5月30日
    00
  • Windows下的Python 3.6.1的下载与安装图文详解(适合32位和64位)

    Windows下的Python3.6.1的下载与安装图文详解(适合32位和64位) 下载Python3.6.1安装包 首先,从Python官网下载Windows安装包。在页面http://www.python.org/downloads/windows/可以找到可供下载的Python版本。在该页面,可以看到所有的Python版本以及相应的安装包。 选择需要的…

    python 2023年5月13日
    00
  • 以日期为列名的 Python Pandas Pivot() 需要排序和格式化

    【问题标题】:Python Pandas Pivot() with Dates as Column Names Need to Sort and Format以日期为列名的 Python Pandas Pivot() 需要排序和格式化 【发布时间】:2023-04-05 11:19:01 【问题描述】: 我在这里看到了其他 cmets,了解当 pivot()…

    Python开发 2023年4月5日
    00
  • python opencv将图片转为灰度图的方法示例

    Python OpenCV将图片转为灰度图的方法 在Python中使用OpenCV库可以快速完成图片的处理,而将彩色图片转为灰度图是图片处理中最基础的操作之一。下面为大家介绍Python OpenCV将图片转为灰度图的方法。 调用OpenCV库 首先需要导入OpenCV库,使用以下代码可以调用OpenCV: import cv2 读取彩色图片 使用下列代码可…

    python 2023年5月18日
    00
  • python元组的概念知识点

    Python元组的概念知识点 什么是Python元组? Python中的元组(Tuple)是另一种有序、不可变的数据类型。元组是通过圆括号中用逗号分隔的多个值创建的。 与列表类似,元组可以包含任何类型的数据,但是它们不同之处在于元组的内容不能被修改。这使得元组任意长度的序列非常有用。 如何创建和访问元组 创建元组 可以通过将值用逗号分隔和在圆括号中包含它们来…

    python 2023年5月14日
    00
  • python tkinter Entry控件的焦点移动操作

    下面是关于“python tkinter Entry控件的焦点移动操作”的完整攻略。 1. Entry控件基本用法 Entry控件是Tkinter中用于输入文本的控件之一,可以通过以下代码创建: from tkinter import * root = Tk() entry = Entry(root) entry.pack() root.mainloop()…

    python 2023年6月13日
    00
  • Python爬虫框架Scrapy常用命令总结

    以下是详细讲解“Python爬虫框架Scrapy常用命令总结”的完整攻略。 1. 问题描述 Scrapy是一个Python爬虫框架,它提供了一系列的命令行工具,用于创建、运行和管理爬虫项目。本文将介绍Scrapy常用命令,并提供示例说明。 2. 解决方法 在Scrapy中,常用的命令行工具包括: scrapy startproject 用于创建一个新的Scr…

    python 2023年5月14日
    00
  • python笔记_将循环内容在一行输出的方法

    Python笔记:将循环内容在一行输出的方法 在Python中,我们可以通过一些方法将循环内容在一行输出,常用的方法包括使用end参数、使用字符串拼接和使用join方法等。 使用end参数 在Python中,我们可以使用print函数的end参数来控制输出后不换行。 以下示例代码演示了如何使用end参数输出循环内容: for i in range(5): p…

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