码迷,mamicode.com
首页 > 数据库 > 详细

pymkysql 的操作

时间:2019-08-23 22:04:47      阅读:113      评论:0      收藏:0      [点我收藏+]

标签:数据   成功   char   返回   引号   bsp   commit   sdl   info   

# 1.安装:pip3 insatll pymysql

# 2.代码链接
import pymysql
#链接
conn=pymysql.connect(
  host=localhost,
  user=root,
  password=123,
  database=egon,
  charset=utf8)
#游标
cursor=conn.cursor() #执行完毕返回的结果集默认以元组显示
#cursor=conn.cursor(cursor=pymysql.cursors.DictCursor)  # 以字典的方式显示数据

# 3.pymysql操作数据库
#执行sql语句
user = input(">>>:").strip()
pwd = input(">>>:").strip()
sql=select * from userinfo where name="%s" and password="%s" %(user,pwd) #注意%s需要加引号

rows=cursor.execute(sql) #执行sql语句,返回sql查询成功的记录数目
# 获取真实数据cursor.fetchone(),cursor.fetchall(),cursor.fetchmany(),类似管道取值,获取一条,所有,多条

cursor.scroll(1,relative)  # 相对移动
cursor.scroll(3,absolute)  # 绝对移动


cursor.close()
conn.close()
```

#### sql注入问题

```python
# 不要手动去拼接查询的sql语句
username = input(">>>:").strip()
password = input(">>>:").strip()
sql = "select * from user where username=‘%s‘ and password=‘%s‘"%(username,password)

# 用户名正确
username >>>: jason -- jjsakfjjdkjjkjs
# 用户名密码都不对的情况
username >>>: xxx or 1=1 --asdjkdklqwjdjkjasdljad
password >>>: ‘‘
```

#### 增删改

```mysql
#
sql = "insert into user(username,password) values(%s,%s)"
rows = cursor.excute(sql,(jason,123))

# 修改
sql = "update user set username=‘jasonDSB‘ where id=1"
rows = cursor.excute(sql)

"""
增和改单单执行excute并不会真正影响到数据,需要再执行conn.commit()才可以完成真正的增改
"""

# 一次插入多行记录
res = cursor,excutemany(sql,[(),(),()]
```

 

pymkysql 的操作

标签:数据   成功   char   返回   引号   bsp   commit   sdl   info   

原文地址:https://www.cnblogs.com/lddragon/p/11402725.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!