使用 Python 连接 MySQL 数据库一般需要以下步骤:
pip install pymysql
import pymysql
config = {
'host': '127.0.0.1',
'port': 3306,
'user': 'root',
'password': '123456',
'db': 'test',
'charset': 'utf8mb4',
'cursorclass': pymysql.cursors.DictCursor
}
connection = pymysql.connect(**config)
其中,DictCursor 是指定返回结果以 Dict 字典的形式返回,而不是默认的 Tuple 格式。
sql = "SELECT * FROM user"
with connection.cursor() as cursor:
cursor.execute(sql)
result = cursor.fetchall()
print(result)
上面代码是执行了一个简单的 SQL 查询语句,并将结果输出。
connection.close()
下面是一个完整的连接 MySQL 数据库并执行查询语句的示例:
import pymysql
config = {
'host': '127.0.0.1',
'port': 3306,
'user': 'root',
'password': '123456',
'db': 'test',
'charset': 'utf8mb4',
'cursorclass': pymysql.cursors.DictCursor
}
# 创建连接对象
connection = pymysql.connect(**config)
# 执行查询语句并返回结果
sql = "SELECT * FROM user"
with connection.cursor() as cursor:
cursor.execute(sql)
result = cursor.fetchall()
print(result)
# 关闭连接对象
connection.close()
另外,这里再提供一个插入数据到数据库的示例:
import pymysql
config = {
'host': '127.0.0.1',
'port': 3306,
'user': 'root',
'password': '123456',
'db': 'test',
'charset': 'utf8mb4',
'cursorclass': pymysql.cursors.DictCursor
}
# 创建连接对象
connection = pymysql.connect(**config)
# 插入数据
sql = "INSERT INTO user (name, age) VALUES (%s, %s)"
with connection.cursor() as cursor:
cursor.execute(sql, ('Bob', 18))
connection.commit()
# 查询结果
sql = "SELECT * FROM user"
with connection.cursor() as cursor:
cursor.execute(sql)
result = cursor.fetchall()
print(result)
# 关闭连接对象
connection.close()
上面代码中插入了一条数据,然后查询并输出结果。需要注意的是,在执行插入操作后需要主动调用 connection.commit() 方法提交更改才能生效。
本文链接:http://task.lmcjl.com/news/18788.html