实现"mysql 1008"的流程
步骤表格
步骤 | 描述 |
---|---|
1 | 连接MySQL数据库 |
2 | 创建数据库 |
3 | 创建表 |
4 | 插入数据 |
5 | 查询数据 |
6 | 更新数据 |
7 | 删除数据 |
8 | 关闭数据库连接 |
代码示例
步骤1:连接MySQL数据库
import mysql.connector
# 建立与数据库的连接
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword"
)
# 创建游标对象
mycursor = mydb.cursor()
代码解释:
mysql.connector
是Python中连接MySQL数据库的模块。mydb
对象是一个表示数据库连接的对象,在连接MySQL数据库时需要提供主机名(host
)、用户名(user
)和密码(password
)等信息。mycursor
对象是一个游标对象,用于执行SQL语句。
步骤2:创建数据库
# 创建数据库
mycursor.execute("CREATE DATABASE mydatabase")
代码解释:
mycursor.execute()
方法用于执行SQL语句,这里执行的是创建数据库的SQL语句。
步骤3:创建表
# 连接到新创建的数据库
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
# 创建表
mycursor.execute("CREATE TABLE customers (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), address VARCHAR(255))")
代码解释:
- 首先需要重新连接到新创建的数据库。
mycursor.execute()
方法用于执行SQL语句,这里执行的是创建表的SQL语句。
步骤4:插入数据
# 插入数据
sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
val = ("John", "Highway 21")
mycursor.execute(sql, val)
mydb.commit() # 提交事务
代码解释:
sql
变量保存了插入数据的SQL语句,并使用了占位符(%s)来表示待插入的值。val
变量保存了具体的值。mycursor.execute()
方法将SQL语句和值传递给数据库执行插入操作。mydb.commit()
方法用于提交事务,将数据真正插入到数据库中。
步骤5:查询数据
# 查询数据
mycursor.execute("SELECT * FROM customers")
result = mycursor.fetchall() # 获取所有行
for row in result:
print(row)
代码解释:
mycursor.execute()
方法用于执行SQL语句,这里执行的是查询数据的SQL语句。mycursor.fetchall()
方法用于获取所有行的结果。- 通过循环遍历结果集,可以逐行获取查询结果。
步骤6:更新数据
# 更新数据
sql = "UPDATE customers SET address = 'Canyon 123' WHERE address = 'Highway 21'"
mycursor.execute(sql)
mydb.commit() # 提交事务
代码解释:
sql
变量保存了更新数据的SQL语句。mycursor.execute()
方法将SQL语句传递给数据库执行更新操作。mydb.commit()
方法用于提交事务,将更新后的数据真正写入到数据库中。
步骤7:删除数据
# 删除数据
sql = "DELETE FROM customers WHERE address = 'Canyon 123'"
mycursor.execute(sql)
mydb.commit() # 提交事务
代码解释:
sql
变量保存了删除数据的SQL语句。mycursor.execute()
方法将SQL语句传递给数据库执行删除操作。mydb.commit()
方法用于提交事务,将删除后的数据从数据库中删除。
步骤8:关闭数据库连接
# 关闭数据库连接
mydb.close()
代码解释:
mydb.close()
方法用于关闭与数据库的连接。
甘特图
gantt
dateFormat YYYY-MM-DD
title 实现"mysql 1008"的甘特图
section 连接MySQL数据库
连接MySQL数据库 :done, 2022-01-01, 1d
section 创建数据库