欢迎访问宙启技术站
智能推送

Python中如何使用writer()将数据写入MySQL数据库

发布时间:2024-01-13 18:12:35

在Python中,可以使用mysql-connector-python库来连接MySQL数据库并使用writer()方法将数据写入数据库。

安装mysql-connector-python库:

pip install mysql-connector-python

连接MySQL数据库:

import mysql.connector

# 建立连接
con = mysql.connector.connect(
    host="localhost",
    user="root",
    password="your_password"
)

# 创建游标
cur = con.cursor()

创建数据库:

# 创建数据库
cur.execute("CREATE DATABASE mydatabase")

创建数据表:

# 选择数据库
cur.execute("USE mydatabase")

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

将数据写入数据库:

# 准备插入的数据
data = [
    ("John", "Highway 21"),
    ("Peter", "Lowstreet 4"),
    ("Amy", "Apple st 652"),
    ("Hannah", "Mountain 21"),
    ("Michael", "Valley 345"),
    ("Sandy", "Ocean blvd 2"),
    ("Betty", "Green Grass 1"),
    ("Richard", "Sky st 331"),
    ("Susan", "One way 98"),
    ("Vicky", "Yellow Garden 2"),
    ("Ben", "Park Lane 38"),
    ("William", "Central st 954"),
    ("Chuck", "Main Road 989"),
    ("Viola", "Sideway 1633")
]

# 插入数据
sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
cur.executemany(sql, data)

# 提交事务
con.commit()

# 打印插入的行数
print(cur.rowcount, "记录插入成功。")

关闭连接:

# 关闭游标
cur.close()

# 关闭连接
con.close()

完整的示例代码如下:

import mysql.connector

# 建立连接
con = mysql.connector.connect(
    host="localhost",
    user="root",
    password="your_password"
)

# 创建游标
cur = con.cursor()

# 创建数据库
cur.execute("CREATE DATABASE mydatabase")

# 选择数据库
cur.execute("USE mydatabase")

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

# 准备插入的数据
data = [
    ("John", "Highway 21"),
    ("Peter", "Lowstreet 4"),
    ("Amy", "Apple st 652"),
    ("Hannah", "Mountain 21"),
    ("Michael", "Valley 345"),
    ("Sandy", "Ocean blvd 2"),
    ("Betty", "Green Grass 1"),
    ("Richard", "Sky st 331"),
    ("Susan", "One way 98"),
    ("Vicky", "Yellow Garden 2"),
    ("Ben", "Park Lane 38"),
    ("William", "Central st 954"),
    ("Chuck", "Main Road 989"),
    ("Viola", "Sideway 1633")
]

# 插入数据
sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
cur.executemany(sql, data)

# 提交事务
con.commit()

# 打印插入的行数
print(cur.rowcount, "记录插入成功。")

# 关闭游标
cur.close()

# 关闭连接
con.close()

这样就可以使用writer()将数据写入MySQL数据库了。注意,在使用writer()之前,需要正确地连接到MySQL数据库,并创建数据库和数据表。