📅  最后修改于: 2023-12-03 15:33:04.113000             🧑  作者: Mango
MySQL 是一种广泛使用的关系型数据库管理系统 (RDBMS),但是在使用之前需要先配置好连接。在本文中,我们将探讨如何建立到 MySQL 数据库的连接。
首先需要安装 MySQL。你可以从 MySQL 官网 (https://dev.mysql.com/) 上下载并安装最新版本的 MySQL。
使用 Python 连接 MySQL 数据库非常简单,只需要使用 Python 的标准库 mysql-connector-python
。这个库提供了一个 connect()
方法,它允许您使用 Python 连接到 MySQL 数据库。
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
print(mydb)
上面的代码演示了如何连接到 MySQL 数据库。host
指定数据库主机名,user
是数据库用户名,password
是数据库密码,database
是要连接的数据库名称。注意,这些参数是根据您的环境和配置而有所不同的。
一旦连接到 MySQL 数据库,就可以创建表格了。下面是一个示例代码,演示如何创建一个名为 customers
的数据表。
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
mycursor = mydb.cursor()
mycursor.execute("CREATE TABLE customers (name VARCHAR(255), address VARCHAR(255))")
一旦创建表格,我们可以向其中插入数据。下面是一个示例代码,演示如何将数据插入 customers
表格中。
import mysql.connector
mydb = mysql.connector.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)
mydb.commit()
print(mycursor.rowcount, "record inserted.")
现在我们已经有了一些数据,我们可以查询它们了。下面是一个示例代码,演示如何查询 customers
表格中的所有数据。
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()
for x in myresult:
print(x)
最后,我们需要关闭到 MySQL 数据库的连接。下面是一个示例代码,演示如何关闭连接。
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
# Do something here...
mydb.close()
当然,在 Python 中,您可以使用 with
语句来自动关闭连接。
import mysql.connector
with mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
) as mydb:
# Do something here...