pymysql 模块!
pymysql模块时一个第三方模块!需要下载:
pymysql的基本使用:
import pymysql conn = pymysql.connect( user = 'root', password = '123', host = '127.0.0.1', # ip地址 port = 3306, # 端口 charset = 'utf8', database = 'day36_1' ) cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)# 产生游标对象 # cursor=pymysql.cursors.DictCursor 将查询出来的结果制成字典的形式返回 sql = "select * from userinto" res = cursor.execute(sql) #执行sql语句 res = cursor.fetchone() # 打印一条数据 res = cursor.fetchall() # 可以打印里面的所有数据 res = cursor.fetchmany(2) #制定获取几条数据,如果数字超了也不报错 print(res) cursor.scroll(2, 'relative') #相对移动 , 基于指针所在位置, 往后偏移 cursor.scroll(3, 'absolute') #绝对移动,基于起始位置往后偏移 print(cursor.fetchall())
我们可以通过python导入模块来连接数据库,进行登陆注册功能,在使用时sql会遇到注入问题
sql注入问题 利用特殊符号和注释语法 巧妙的绕过真正的sql校验,是用户数据不安全
关键性的数据 不要自己手动去拼接 而是交由execute帮你去做拼接
import pymysql conn = pymysql.connect( user = 'root' , password = '123', host = '127.0.0.1', port = 3306, database = 'day36_1', charset = 'utf8' ) cursor = conn.cursor(cursor=pymysql.cursors.DictCursor) #获取用户名和密码,然后取数据库中校验 username = input('username>:').strip() password = input('password>:').strip() sql = "select * from userinto where name=%s and password=%s" print(sql) cursor.execute(sql, (username, password)) #交由execute帮你去做拼接,解决注入问题 res = cursor.fetchall() if res: print(res) else: print('username or password error!')
我们也可以利用pycharm来操作数据库文件的增删改查!
针对增 删 改操作 执行重要程度偏高
你如果真想操作 必须有一步确认操作(commit)
import pymysql conn = pymysql.connect( user = 'root', passwd = '123456', db = 'day36', host = '127.0.0.1', port = 3306, charset = 'utf8', autocommit = True # 自动提交确认 ) cursor = conn.cursor(cursor=pymysql.cursors.DictCursor) # #查: 获取用户输入的用户名和密码 然后取数据库中校验 # username = input('username>:').strip() # password = input('password>:').strip() # # sql = "select * from userinfo where name='%s' and password= '%s'"%(username,password) # sql = "select * from userinfo where name=%s and password= %s" # print(sql) # 增 sql = "insert into userinfo(name,password,dep_id) values('jason',789,1)" # 改 # sql = "update userinfo set name='egondsb' where id = 6" # 删除 # sql = "delete from userinfo where id= 1" res = cursor.execute(sql) # conn.commit() # 确认当前操作 真正的同步到数据库 print(res)
以上就是相关知识点内容,感谢大家的学习和对的支持。
标签:
pymysql,模块操作
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“pymysql模块的操作实例”评论...
更新动态
2024年11月25日
2024年11月25日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]