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()
CRUD操作
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()