pymysql

Django模型

寵の児 提交于 2020-01-29 02:57:24
Django 模型 Django 对各种数据库提供了很好的支持,包括:PostgreSQL、MySQL、SQLite、Oracle。 Django 为这些数据库提供了统一的调用API。 我们可以根据自己业务需求选择不同的数据库。 MySQL 是 Web 应用中最常用的数据库。 如果你没安装 mysql 驱动,可以执行以下命令安装: pip install mysqlclient conda install mysqlclient 连接MySQL驱动 mysqlclient python 2 , 3都能直接使用 致命缺点:对mysql安装有要求,必须指定位置存在配置文件 python-mysql python2支持很好 python3不支持 pymysql python2,python3都支持 它还可以伪装成前面的库。 伪装 在django项目中的 __init__.py 中添加 import pymysql pymysql . install_as_MySQLdb ( ) 或者 from pymysql import install_as_MySQLdb install_as_MySQLdb ( ) 作用是让Django的ORM能以mysqldb的方式来调用PyMySQL。 数据库配置 我们在项目的 settings.py 文件中找到 DATABASES 配置项,将其信息修改为:

python之day12(mysql,pymysql,SQLAchemy,paramiko)

时光怂恿深爱的人放手 提交于 2020-01-28 16:40:52
四 mysql   参考博客:http://www.cnblogs.com/wupeiqi/articles/5699254.html   权限管理:     用户管理        创建用户 create user '用户名'@'IP地址' identified by '密码'; 删除用户 drop user '用户名'@'IP地址'; 修改用户 rename user '用户名'@'IP地址'; to '新用户名'@'IP地址';; 修改密码 set password for '用户名'@'IP地址' = Password('新密码') PS:用户权限相关数据保存在mysql数据库的user表中,所以也可以直接对其进行操作(不建议)     授权:        show grants for '用户'@'IP地址' -- 查看权限 grant 权限 on 数据库.表 to '用户'@'IP地址' -- 授权 revoke 权限 on 数据库.表 from '用户'@'IP地址' -- 取消权限 all privileges 除grant外的所有权限 select 仅查权限 select,insert 查和插入权限 ... usage 无访问权限 alter 使用alter table alter routine 使用alter procedure和drop procedure

pymysql模块学习之获取结果

允我心安 提交于 2020-01-28 04:40:59
目录 起步 查 获取结果 fetchone 情况一 情况二 情况三 fetchmany 情况一 情况二 情况三 fetchall 情况一 情况二 情况三 scroll移动 相对移动 绝对移动 示例代码 起步 #!/usr/bin/python3 # -*- coding: utf-8 -*- """pymysql查询 """ import pymysql conn = pymysql . connect ( user = 'root' , password = '' , host = 'localhost' , port = 3306 , charset = 'utf8mb4' , database = 'hardy2_db' , ) # 游标类型 cursor = conn . cursor ( cursor = None ) # cursor = conn.cursor(cursor=pymysql.cursors.DictCursor) 查 sql = 'select id, age, name as nickname from pymysql_tb;' affected = cursor . execute ( query = sql ) # 拿到查询到的记录数 # print(affected) # int, 返回受影响的行数数目 获取结果 fetchone cursor

阿里云(ECS)Centos7部署Django2.2报MysqlClient的错误

廉价感情. 提交于 2020-01-28 02:18:20
阿里云(ECS)Centos7部署Django2.2报MysqlClient的错误 1 如果Django的版本是1.1 2 如果Django的版本>2 1 如果Django的版本是1.1 在总文件夹的__ini__.py中加入: import pymysql pymysql . install_as_MySQLdb ( ) 2 如果Django的版本>2 这个时候不建议用pymysql.install_as_MySQLdb()的这种方式,因为不是这里的问题 以Centos7为例: yum install python-devel yum install mysql-devel yum install gcc pip3 install mysqlclient 来源: CSDN 作者: kzl_knight 链接: https://blog.csdn.net/kzl_knight/article/details/104094863

PyMySQL

女生的网名这么多〃 提交于 2020-01-27 17:44:27
pymysql是一个socket客户端,使用它需要先建立连接 基本使用 连接数据库 import pymysql conn = pymysql.connect( host = '127.0.0.1', port = 3306, user = 'root', password = '', database = 'db1', charset = 'utf8', ) 获取游标 cursor = conn.cursor() cursor = conn.cursor(pymysql.cursors.DictCursor) # 获取游标时,通常用此方法获取,这样查询返回的数据是字典的形式,   1. key是字段,value是字段值   2. 每个字典就是一条记录 向游标提交sql语句 rows = cursor.execute('show tables;') print(rows) # 2 得到的结果是响应的行数 补充: 当输入的sql语句的查询没有结果时,影响行数为0 我们在cmd里执行sql语句得到的是数据结果和行数,在python中执行的sql语句打印出来的只有行数,实际上数据结果也拿到了,此时在内存中,可以继续通过游标获取 获取数据 获取一条 : fetchone() 获取所有 : fetchall() 获取指定数量: fetchmany(size) rows = cursor

pymysql模块的使用

£可爱£侵袭症+ 提交于 2020-01-22 06:35:03
  实现:使用Python实现用户登录,如果用户存在则登录成功(假设该用户已在数据库中) import pymysql user = input('请输入用户名:') pwd = input('请输入密码:') # 1.连接 conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', password='', db='db8', charset='utf8') # 2.创建游标 cursor = conn.cursor() #注意%s需要加引号 sql = "select * from userinfo where username='%s' and pwd='%s'" %(user, pwd) print(sql) # 3.执行sql语句 cursor.execute(sql) result=cursor.execute(sql) #执行sql语句,返回sql查询成功的记录数目 print(result) # 关闭连接,游标和连接都要关闭 cursor.close() conn.close() if result: print('登陆成功') else: print('登录失败') execute() 之 slq注入: 最后那一个空格,在一条sql语句中如果遇到select * from userinfo

16-pymysql模块的使用

假装没事ソ 提交于 2020-01-22 06:34:43
本节重点: pymysql的下载和使用 execute()之sql注入 增、删、改:conn.commit() 查:fetchone、fetchmany、fetchall 一、pymysql的下载和使用   之前我们都是通过MySQL自带的命令行客户端工具mysql来操作数据库,那如何在python程序中操作数据库呢?这就用到了pymysql模块,该模块本质就是一个套接字客户端软件,使用前需要事先安装。 (1)pymysql模块的下载 pip3 install pymysql (2)pymysql的使用 数据库和数据都已存在 # 实现:使用Python实现用户登录,如果用户存在则登录成功(假设该用户已在数据库中) import pymysql user = input('请输入用户名:') pwd = input('请输入密码:') # 1.连接 conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', password='', db='db8', charset='utf8') # 2.创建游标 cursor = conn.cursor() #注意%s需要加引号 sql = "select * from userinfo where username='%s' and pwd='%s'" %(user,

python D40 pymsql和navicat

|▌冷眼眸甩不掉的悲伤 提交于 2020-01-22 06:34:22
一 IDE工具介绍(Navicat)   生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具,我们使用Navicat工具,这个工具本质上就是一个socket客户端,可视化的连接mysql服务端的一个工具,并且他是图形界面版的。我们使用它和直接使用命令行的区别就类似linux和windows系统操作起来的一个区别。 二 MySQL数据备份 #1. 物理备份: 直接复制数据库文件,适用于大型数据库环境。但不能恢复到异构系统中如Windows。 #2. 逻辑备份: 备份的是建表、建库、插入等操作所执行SQL语句,适用于中小型数据库,效率相对较低。 #3. 导出表: 将表导入到文本文件中。   一、使用mysqldump实现逻辑备份 #语法: # mysqldump -h 服务器 -u用户名 -p密码 数据库名 > 备份文件.sql #示例: #单库备份 mysqldump -uroot -p123 db1 > db1.sql mysqldump -uroot -p123 db1 table1 table2 > db1-table1-table2.sql #多库备份 mysqldump -uroot -p123 --databases db1 db2 mysql db3 > db1_db2_mysql_db3.sql #备份所有库 mysqldump -uroot

Navicat工具、pymysql模块

馋奶兔 提交于 2020-01-22 06:34:04
cls超 Navicat工具、pymysql模块 阅读目录 一 IDE工具介绍 二 pymysql模块 一 IDE工具介绍(Navicat)   生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具,我们使用Navicat工具,这个工具本质上就是一个socket客户端,可视化的连接mysql服务端的一个工具,并且他是图形界面版的。我们使用它和直接使用命令行的区别就类似linux和windows系统操作起来的一个区别。 下载链接:https://pan.baidu.com/s/1bpo5mqj   Navicat的安装教程看这篇博客: https://www.cnblogs.com/clschao/articles/10022040.html    掌握: #1. 测试+链接数据库 #2. 新建库 #3. 新建表,新增字段+类型+约束 #4. 设计表:外键 #5. 新建查询 #6. 备份库/表 #注意: 批量加注释:ctrl+?键 批量去注释:ctrl+shift+?键 二 pymysql模块   我们要学的pymysql就是用来在python程序中如何操作mysql,它和mysql自带的那个客户端还有navicat是一样的,本质上就是一个套接字客户端,只不过这个套接字客户端是在python程序中用的,既然是客户端套接字,应该怎么用,是不是要连接服务端

Navicat工具、pymysql模块

℡╲_俬逩灬. 提交于 2020-01-22 06:33:47
一 IDE工具介绍(Navicat)   生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具,我们使用Navicat工具,这个工具本质上就是一个socket客户端,可视化的连接mysql服务端的一个工具,并且他是图形界面版的。我们使用它和直接使用命令行的区别就类似linux和windows系统操作起来的一个区别。   下载连接: https://pan.baidu.com/s/1bpo5mqj   Navicat的安装教程看这篇博客: https://www.cnblogs.com/pythoncainiao/p/10296069.html 掌握: #1. 测试+链接数据库 #2. 新建库 #3. 新建表,新增字段+类型+约束 #4. 设计表:外键 #5. 新建查询 #6. 备份库/表 #注意: 批量加注释:ctrl+?键 批量去注释:ctrl+shift+?键 二 pymysql模块   我们要学的pymysql就是用来在python程序中如何操作mysql,它和mysql自带的那个客户端还有navicat是一样的,本质上就是一个套接字客户端,只不过这个套接字客户端是在python程序中用的,既然是客户端套接字,应该怎么用,是不是要连接服务端,并且和服务端进行通信啊,让我们来学习一下pymysql这个模块 #安装 pip3 install pymysql