一、Python 3与MySQL的简介
Python是一个高级编程语言,它是一种解释性语言,易学易用。Python 3是Python语言的第三个主要版本。
MySQL是一种关系型数据库管理系统,它使用SQL语言来管理数据库。MySQL是开源的,性能强劲且可靠。
Python 3和MySQL之间的无缝集成,使Python能够在任何地方都能够快速和轻松地访问MySQL数据库。
二、通过Python连接MySQL数据库
在Python中连接MySQL数据库需要安装Python的MySQLdb模块。如果没有安装,可以使用以下命令安装:
pip install mysqlclient
安装完成后,可以使用以下代码测试连接:
import MySQLdb
db = MySQLdb.connect(host="localhost",
user="root",
passwd="password",
db="testdb")
cursor = db.cursor()
cursor.execute("SELECT VERSION()")
data = cursor.fetchone()
print "Database version : %s " % data
db.close()
代码说明:首先我们需要导入MySQLdb模块,创建一个MySQL连接对象,通过连接对象创建游标对象,使用游标对象执行SQL语句,最后关闭连接。
三、操作MySQL数据库
(一)创建表
import MySQLdb
db = MySQLdb.connect(host="localhost",
user="root",
passwd="password",
db="testdb")
cursor = db.cursor()
sql = """CREATE TABLE EMPLOYEE (
FIRST_NAME CHAR(20) NOT NULL,
LAST_NAME CHAR(20),
AGE INT,
SEX CHAR(1),
INCOME FLOAT )"""
cursor.execute(sql)
db.close()
代码说明:我们使用CREATE TABLE语句创建了一个名为EMPLOYEE的表,其中包含FIRST_NAME、LAST_NAME、AGE、SEX和INCOME等字段。
(二)插入数据
import MySQLdb
db = MySQLdb.connect(host="localhost",
user="root",
passwd="password",
db="testdb")
cursor = db.cursor()
sql = """INSERT INTO EMPLOYEE(FIRST_NAME,
LAST_NAME, AGE, SEX, INCOME)
VALUES ('John', 'Smith', 20, 'M', 2000)"""
cursor.execute(sql)
db.commit()
db.close()
代码说明:我们使用INSERT INTO语句将一条数据插入到EMPLOYEE表中。
(三)查询数据
import MySQLdb
db = MySQLdb.connect(host="localhost",
user="root",
passwd="password",
db="testdb")
cursor = db.cursor()
sql = "SELECT * FROM EMPLOYEE \
WHERE INCOME > '%d'" % (1000)
cursor.execute(sql)
results = cursor.fetchall()
for row in results:
first_name = row[0]
last_name = row[1]
age = row[2]
sex = row[3]
income = row[4]
print "first_name=%s,last_name=%s,age=%d,sex=%s,income=%d" % \
(first_name, last_name, age, sex, income )
db.close()
代码说明:我们使用SELECT语句查询了EMPLOYEE表中的数据,并通过for循环将每一条数据打印出来。
(四)更新数据
import MySQLdb
db = MySQLdb.connect(host="localhost",
user="root",
passwd="password",
db="testdb")
cursor = db.cursor()
sql = "UPDATE EMPLOYEE SET AGE = AGE + 1 WHERE SEX = '%c'" % ('M')
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
db.close()
代码说明:我们使用UPDATE语句将EMPLOYEE表中性别为“M”的员工年龄加1。
(五)删除数据
import MySQLdb
db = MySQLdb.connect(host="localhost",
user="root",
passwd="password",
db="testdb")
cursor = db.cursor()
sql = "DELETE FROM EMPLOYEE WHERE AGE > '%d'" % (30)
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
db.close()
代码说明:我们使用DELETE FROM语句删除了EMPLOYEE表中年龄大于30的员工。
结论
在Python 3与MySQL的无缝集成的帮助下,Python可以轻松访问MySQL数据库。本文介绍了如何使用MySQLdb模块在Python中连接、操作MySQL数据库,包括创建表、插入数据、查询数据、更新数据和删除数据。
Python 3与MySQL的完美结合为数据科学家和开发人员提供了一个强大的工具,它能够优化数据分析和应用程序开发。