MySQL连接
1. 介绍
MySQL是一种流行的开源关系型数据库管理系统,用于存储和管理数据。在使用MySQL时,首先需要与数据库建立连接,以便进行数据操作。本文将详细介绍MySQL连接的相关知识。
2. 连接方式
在Python中,我们可以使用多种方式来与MySQL建立连接,其中常见的方式有:
- 使用
mysql.connector
模块 - 使用
pymysql
模块 - 使用
MySQLdb
模块(仅支持Python2)
下面将分别介绍这三种方式的使用方法。
2.1 使用mysql.connector
模块
mysql.connector
是官方提供的用于与MySQL数据库进行连接的Python模块。首先,我们需要安装该模块:
pip install mysql-connector-python
接下来,我们可以使用以下代码来建立MySQL连接:
import mysql.connector
# 建立连接
connection = mysql.connector.connect(
host="localhost",
user="用户名",
password="密码",
database="数据库名"
)
# 关闭连接
connection.close()
在上述代码中,我们使用mysql.connector.connect()
函数来建立与MySQL数据库的连接,需要传入以下参数:
host
:MySQL数据库所在的主机名或IP地址user
:连接MySQL数据库的用户名password
:连接MySQL数据库的密码database
:要使用的数据库名
当我们不再需要与MySQL数据库保持连接时,可以使用connection.close()
方法来关闭连接。
2.2 使用pymysql
模块
pymysql
是第三方提供的用于与MySQL数据库进行连接的Python模块。首先,我们需要安装该模块:
pip install pymysql
接下来,我们可以使用以下代码来建立MySQL连接:
import pymysql
# 建立连接
connection = pymysql.connect(
host="localhost",
user="用户名",
password="密码",
database="数据库名"
)
# 关闭连接
connection.close()
在上述代码中,我们使用pymysql.connect()
函数来建立与MySQL数据库的连接,需要传入以下参数:
host
:MySQL数据库所在的主机名或IP地址user
:连接MySQL数据库的用户名password
:连接MySQL数据库的密码database
:要使用的数据库名
当我们不再需要与MySQL数据库保持连接时,可以使用connection.close()
方法来关闭连接。
2.3 使用MySQLdb
模块
MySQLdb
是第三方提供的用于与MySQL数据库进行连接的Python模块,不支持Python3,仅支持Python2。首先,我们需要安装该模块:
pip install MySQL-python
接下来,我们可以使用以下代码来建立MySQL连接:
import MySQLdb
# 建立连接
connection = MySQLdb.connect(
host="localhost",
user="用户名",
passwd="密码",
db="数据库名"
)
# 关闭连接
connection.close()
在上述代码中,我们使用MySQLdb.connect()
函数来建立与MySQL数据库的连接,需要传入以下参数:
host
:MySQL数据库所在的主机名或IP地址user
:连接MySQL数据库的用户名passwd
:连接MySQL数据库的密码db
:要使用的数据库名
当我们不再需要与MySQL数据库保持连接时,可以使用connection.close()
方法来关闭连接。
3. 连接参数
在建立MySQL连接时,除了必须的参数外,还可以使用其他可选参数来配置连接的行为。以下是一些常用的连接参数:
port
:连接MySQL服务器的端口号,默认为3306charset
:连接使用的字符集,默认为’utf8′autocommit
:设置是否自动提交事务,默认为False
下面是一个示例代码,展示如何使用这些可选参数:
import mysql.connector
# 建立连接
connection = mysql.connector.connect(
host="localhost",
user="用户名",
password="密码",
database="数据库名",
port=3306,
charset="utf8",
autocommit=True
)
# 关闭连接
connection.close()
在上述代码中,我们传入了port=3306
来指定连接MySQL服务器的端口号为3306,charset="utf8"
来指定连接使用的字符集为utf8,autocommit=True
来设置自动提交事务。
4. 运行结果
当我们成功建立与MySQL数据库的连接后,可以通过该连接对象来执行各种操作,例如执行SQL查询、插入、更新等操作。下面是一个示例代码,展示如何使用连接对象执行SQL查询:
import mysql.connector
# 建立连接
connection = mysql.connector.connect(
host="localhost",
user="用户名",
password="密码",
database="数据库名"
)
# 创建游标
cursor = connection.cursor()
# 执行SQL查询
sql = "SELECT * FROM 表名"
cursor.execute(sql)
# 获取查询结果
result = cursor.fetchall()
for row in result:
print(row)
# 关闭游标和连接
cursor.close()
connection.close()
在上述代码中,我们首先使用connection.cursor()
方法创建一个游标对象,然后使用游标对象的execute()
方法执行SQL查询,最后使用游标对象的fetchall()
方法获取查询结果并打印输出。
5. 小结
本文介绍了如何使用Python与MySQL数据库建立连接。首先,我们介绍了三种常见的连接方式,包括使用mysql.connector
模块、pymysql
模块和MySQLdb
模块(仅支持Python2)。然后,我们介绍了连接的可选参数,并展示了一个完整的示例代码。最后,我们演示了如何使用连接对象执行SQL查询并获取查询结果。