import pymysql #pip3 install pymysql
conn=pymysql.connect(
    host='127.0.0.1',
    port=3306,
    user='root',
    password='123',
    database='db42',
    charset='utf8'
)
cursor=conn.cursor(pymysql.cursors.DictCursor)
# rows=cursor.execute('show tables;')
rows=cursor.execute('select * from class;')
print(rows)
# print(cursor.fetchone())
# print(cursor.fetchone())
# print(cursor.fetchmany(2))
# print(cursor.fetchall())
# print(cursor.fetchall())
# print(cursor.fetchall())
# cursor.scroll(3,'absolute')
# print(cursor.fetchone())
print(cursor.fetchone())
print(cursor.fetchone())
cursor.scroll(1,'relative')
print(cursor.fetchone())
cursor.close()
conn.close()
import pymysql
"""pymysql使用步骤
    核心类 Connect链接用  和Cursor读写用
    1.与数据库服务器建立链接
    2.获取游标对象 (用于发送和接收数据)
    3.用游标执行sql语句
    4.使用fetch方法来获取执行的结果
    5.关闭链接  先关游标 再关链接
    游标的常用方法
    1.创建游标  conn.cursor(指定查询结果的数据类型)
    2.excute  执行sql
    3.fetchone(当sql只有一条记录时)  many(sql有多条并且需要指定条数)  all(多条)
    4.scroll  用于修改游标的当前位置
    注意: pymysql 默认不提交修改  但是注意(指的是对表中记录的操作不提交)  像删库 删表 是无法撤销的
"""
# 创建链接得到一个链接对象
conn = pymysql.Connect(
    host="127.0.0.1",  # 数据库服务器主机地址
    user="root",  # 用户名
    password="admin",  # 密码
    database="day42",  # 数据库名称
    port=3306,  # 端口号 可选 整型
    charset="utf8"  # 编码  可选
)
# 获取游标对象  pymysql.cursors.DictCursor指定 返回的结果类型 为字典  默认是元祖类型
cursor = conn.cursor(pymysql.cursors.DictCursor)
# 查询数据
sql = "select *from emp"
# 执行sql  如果是select 语句返回的是 查询的条数
res = cursor.execute(sql)
print(res)
# 获取查询的结果
# print(cursor.fetchall())
# print(cursor.fetchone())
# print(cursor.fetchone())
# print(cursor.fetchmany(1))
# print(cursor.fetchall())
# scroll
print(cursor.fetchone())
cursor.scroll(-1)
print(cursor.fetchall())
# 关闭链接
cursor.close()
conn.close()