pymysql 套接字客户端软件
先建立连接到数据库,然后执行sql语句
user = input('user>>: ').strip()
pwd = input('password>>: ').strip()
conn = pymysql.connect(
host='192.168.43.133',
port=3306,
user='root',
password='123',
db='db2',
charset='utf8' # 不是utf-8
)
# 拿到游标
cursor = conn.cursor()
# 执行sql语句认证
sql='select * from userinfo where user = %s and pwd=%s'
rows=cursor.execute(sql,[user,pwd]) # 受影响的行数
# 关闭连接
cursor.close()
conn.close()
# 进行判断
if rows:
print('登录成功')
else:
print('登录失败')
增、删、改:
import pymysql
#链接
conn=pymysql.connect(host='localhost',user='root',password='123',database='egon')
#游标
cursor=conn.cursor()
#执行sql语句 三种执行方法
#part1
# sql='insert into userinfo(name,password) values("root","123456");'
# res=cursor.execute(sql) #执行sql语句,返回sql影响成功的行数
#part2
# sql='insert into userinfo(name,password) values(%s,%s);'
# res=cursor.execute(sql,("root","123456"))
#part3
sql='insert into userinfo(name,password) values(%s,%s);'
res=cursor.executemany(sql,[("root","123456"),("lhf","12356"),("eee","156")])
conn.commit() #提交
cursor.close()
conn.close()
查:fetchone,fetchmany,fetchall
import pymysql
#链接
conn=pymysql.connect(host='localhost',user='root',password='123',database='egon')
#游标
cursor=conn.cursor()
#执行sql语句
sql='select * from userinfo;'
rows=cursor.execute(sql)
res1=cursor.fetchone() # 拿一个,拿完显示为none
res4=cursor.fetchmany(2) # 拿多个
res5=cursor.fetchall() # 拿完,列表形式,再拿就是空列表
# cursor.scroll(3,mode='absolute') # 相对绝对位置移动
# cursor.scroll(3,mode='relative') # 相对当前位置移动
#移动过之后可以再次获取
#cursor=conn.cursor(pymysql.cursors.DictCursor) # 字典形式
# 连同字段一起显示为字典形式
{'id': 1, 'name': 'xiaoming', 'password': '123'}
conn.commit()
cursor.close()
conn.close()
print(cursor.lastrowid)获取最后一条数据的自增ID
import pymysql
conn=pymysql.connect(host='localhost',user='root',password='123',database='egon')
cursor=conn.cursor()
sql='insert into userinfo(name,password) values("xxx","xxx");'
rows=cursor.execute(sql)
print(cursor.lastrowid) #在插入语句后查看
conn.commit()
cursor.close()
conn.close()