MySQL的pymysql操作

PyMysql是一个纯Python实现的MySQL客户端库,支持兼容Python3,用于代替MySQLdb

查询操作

提前写在mysql中准备相对应的表和数据

CREATE DATABASE IF NOT EXISTS mydb17_pymysql;

USE mydb17_pymysql;

CREATE TABLE IF NOT EXISTS student(
	sid INT PRIMARY KEY auto_increment,
	sname VARCHAR(20),
	age INT
);

INSERT INTO student VALUES(NULL,'宋江',30),(NULL,'武松',28),(NULL,'林冲',26);

查询

import pymysql

# 获取mysql连接
conn = pymysql.connect(host='localhost', port=3306, user='root', password=, database='mydb17_pymysql')

# 获取游标
cursor = conn.cursor()

# 执行SQL语句 返回值就是SQL语句在执行过程中影响的行数

sql = "select * from student;"

row_count = cursor.execute(sql)
print("SQL语句执行影响的行数%d"%row_count)

# 取出结果集中一行,返回的结果是一行
# print(cursor.fetchone())

# 取出结果集中的所有数据,返回一行数据
for line in cursor.fetchall():
    print(line)

# 关闭游标
cursor.close()

增删改操作

import pymysql

# 获取mysql连接
conn = pymysql.connect(host='localhost', port=3306, user='root', password=, database='mydb17_pymysql')

# 获取游标
cursor = conn.cursor()

# 执行SQL语句 返回值就是SQL语句在执行过程中影响的行数

sql = "select * from student;"

row_count = cursor.execute(sql)
print("SQL语句执行影响的行数%d"%row_count)

# 取出结果集中一行,返回的结果是一行
# print(cursor.fetchone())

# 取出结果集中的所有数据,返回一行数据
for line in cursor.fetchall():
    print(line)

# 关闭游标
cursor.close()

猜你喜欢

转载自blog.csdn.net/JAX_fire/article/details/125828938