赞
踩
本文基于MySQL8.x
版本的学习,python版本基于当前最新的3.x
,windows操作系统下mysql的安装流程,可参考我之前的文章:Windows MySQL8.0免安装版,配置多个安装实例
在Python中,您可以使用多种方式来操作MySQL数据库。以下是一些常见的方式:
mysql-connector-python
:这是MySQL官方提供的官方驱动程序,可以通过pip安装。它提供了mysql.connector模块,用于连接和操作MySQL数据库。
PyMySQL:PyMySQL是一个纯Python编写的MySQL客户端库,可以通过pip安装。它提供了与MySQL数据库交互所需的各种功能。
mysqlclient:mysqlclient是Python的MySQL数据库驱动程序,可以通过pip安装。它是基于C语言的MySQL客户端库的绑定,提供了高性能的操作。
SQLAlchemy:SQLAlchemy是一个流行的Python SQL工具和对象关系映射(ORM)库,支持多种数据库,包括MySQL。它提供了一种更高级的抽象来操作数据库。
peewee
peewee 是一个流行的 ORM 框架,实现了对象与数据库表的映射,兼容多种数据库,我们无需知道原生 SQL,只要了解面向对象的思想就可以简单、快速的操作相应数据库,支持 Python3。
在Python 3中,可以使用mysql-connector-python
库来连接和进行CRUD(创建、读取、更新和删除)操作。以下是Python 3和MySQL 8.x版本的连接和基本操作的示例代码:
在使用mysql-connector-python
库之前,需要先安装它。可以使用以下命令来安装:
pip install mysql-connector-python
CREATE DATABASE `py_conn_test` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci';
# 书目表
CREATE TABLE `py_conn_test`.`book` (
`id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`title` varchar(255) NULL COMMENT '书名',
`author` varchar(255) NULL COMMENT '作者',
`price` float(10, 2) NULL COMMENT '书名价格',
`edition` int NULL COMMENT '版次',
PRIMARY KEY (`id`)
);
import mysql.connector
# 创建数据库连接
conn = mysql.connector.connect(
host="192.168.0.146",# 数据库主机ip,或者localhost表示当前主机
port=4706, # 端口,不写此参数默认3306
user="zhouquan", # 数据库账户
password="zhouquan@123", # 数据库密码
database="py_conn_test" # 数据库名,上面语句创建的mysql数据库名
)
import mysql.connector # 创建数据库连接 conn = mysql.connector.connect( host="192.168.0.146", port=4706, user="zhouquan", password="zhouquan@123", database="py_conn_test" ) # 创建游标对象 cursor = conn.cursor() # 执行SQL语句 cursor.execute("SELECT * FROM book") # 获取查询结果 results = cursor.fetchall() # 打印结果 for row in results: print(row) # 关闭游标和连接 cursor.close() conn.close()
在上述代码中,我们使用mysql.connector
库来连接MySQL数据库。需要提供主机名、端口号、用户名、密码和数据库名来建立连接。然后创建一个游标对象,该对象用于执行SQL语句。在示例中,我们执行了一个简单的SELECT语句,并使用fetchall()
方法获取查询结果。最后关闭游标和连接对象。
import mysql.connector # 创建数据库连接 conn = mysql.connector.connect( host="192.168.0.146", port=4706, user="root", password="数据库密码", database="py_conn_test" ) # 创建游标对象 cursor = conn.cursor() # 插入数据 sql = "INSERT INTO `py_conn_test`.`book`( `title`, `author`, `price`, `edition`) VALUES ( %s,%s,%s,%s);" values = ("动物农场", "乔治.奥威尔", 15.5, 3) cursor.execute(sql, values) # 提交事务 conn.commit() # 关闭游标和连接 cursor.close() conn.close()
在插入数据的示例中,我们使用execute()
方法执行INSERT语句,并将要插入的值作为参数传递给execute()
方法。然后使用commit()
方法提交事务以保存更改。
在更新的示例中,我们使用execute()
方法执行UPDATE语句,并传递相应的参数。最后,使用commit()
方法提交事务以保存更改。
import mysql.connector # 创建数据库连接 conn = mysql.connector.connect( host="192.168.0.146", port=4706, user="zhouquan", password="zhouquan@123", database="py_conn_test" ) # 创建游标对象 cursor = conn.cursor() # 更新数据 当前数据库数据:2 动物农场 乔治.奥威尔 15.50 3 sql = "UPDATE `book` SET title = %s WHERE id = %s" values = ("1984", 2) cursor.execute(sql, values) conn.commit() # 提交事务 conn.commit() # 关闭游标和连接 cursor.close() conn.close()
在删除数据的示例中,我们使用execute()
方法执行DELETE语句,并传递相应的参数。最后,使用commit()
方法提交事务以保存更改。
import mysql.connector # 创建数据库连接 conn = mysql.connector.connect( host="192.168.0.146", port=4706, user="zhouquan", password="zhouquan@123", database="py_conn_test" ) # 创建游标对象 cursor = conn.cursor() # 删除数据 sql = "DELETE FROM book WHERE id = %s" value = (2,) cursor.execute(sql, value) conn.commit() # 提交事务 conn.commit() # 关闭游标和连接 cursor.close() conn.close()
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。