python高级编程之和mysql之间的亲密互动

mysql作为使用较广的数据库,python和mysql的互动带来的好处无需多言。

python处理数据库无非是下面四步:
1.引人处理数据库的模块
2.建立与数据库之间的联系
3.运行对数据库的增删改查等操作
4.退出连接

python2版本用的是MySQLdb
python3版本用的是PyMySQL
(感谢前人栽树 :https://www.cnblogs.com/guolixiucai/p/5277826.html)
因而 直接cmd命令行使用pip install PyMySQL直接进行安装

image.png

python处理mysql代码

import pymysql

print(pymysql.__version__)

# 开始连接数据库,参数依次为 本地,用户名,密码,数据库名
db = pymysql.connect("localhost", "root", "root", "gloryofkings")
# 使用 cursor() 创建一个游标对象
cursor = db.cursor()
#查看数据库版本
cursor.execute("SELECT VERSION()")
data = cursor.fetchone()
print("Database version:%s" % data)

# 创建表 若存在则删除
cursor.execute("drop table if exists heros")
# 封装sql语句
sql_create = """create table heros(
         name varchar(10) not null,
         sex char(10),
         role varchar(20)
         );"""

sql_insert_1 = """insert into heros(
            name,sex,role)
            values 
            ("李白","male","assassin"); """

sql_insert_2 = """insert into heros(
            name,sex,role)
            values 
            ("鲁班","male","shooter"); """

sql_query = "select * from heros"

# 运行SQL语句
cursor.execute(sql_create)
cursor.execute(sql_insert_1)
cursor.execute(sql_insert_2)
# 提交到数据库执行
db.commit()

cursor.execute(sql_query)
# 获取记录列表
results = cursor.fetchall()
for row in results:
    name = row[0]
    sex = row[1]
    role = row[2]
    print(name,sex,role)

# 使用fetchone 获取一条数据


#关闭数据库
db.close()

你可能感兴趣的:(python高级编程之和mysql之间的亲密互动)