import pymysql
# 获取连接
conn = pymysql.connect(
host='10.105.212.1',
port=3306,
user='root',
password='root@Twitt3r.com',
database='db',
charset='utf8'
)
# 获取游标
# 字典方式显示 pymysql.cursors.DictCursor {'id': 1, 'name': 'liuxu', 'password': '12345'}
cursor = conn.cursor(pymysql.cursors.DictCursor)
#找到id=2的用户数据
sql = 'select * from users where id = %s;' # 使用 %s占位
cursor.execute(sql, 2) # execute()中第一个是sql语句,第二个是替换占位的条件
for d in cursor.fetchall():
print(d)
"""
{'id': 2, 'name': 'liuxu2', 'password': '12345'}
"""
sql = 'select * from users where id >= %s and id <= %s;' # 使用 %s占位
cursor.execute(sql, [3, 4]) # 以为有两个参数,使用列表会元组的形式存放替换占位的条件
for d in cursor.fetchall():
print(d)
"""
{'id': 3, 'name': 'liuxu3', 'password': '12345'}
{'id': 4, 'name': 'liuxu4', 'password': '12345'}
"""
# 字典传参
sql = 'select * from users where id >= %(start)s and id <= %(end)s;'
cursor.execute(sql, {"start": 3, "end": 4})
for d in cursor.fetchall():
print(d)
"""
{'id': 3, 'name': 'liuxu3', 'password': '12345'}
{'id': 4, 'name': 'liuxu4', 'password': '12345'}
"""