数据库——可视化工具Navicat、pymysql模块、sql注入问题
数据库——可视化工具Navicat、pymysql模块、sql注入问题
Navicat可视化工具
Navicat是数据库的一个可视化工具,可直接在百度搜索下载安装,它可以通过鼠标“点点点”的方式实现MySQL在cmd命令行中输入的SQL语句,操作易上手
pymysql模块
pymysql就是用来在python程序中如何操作mysql,它和mysql自带的那个客户端还有navicat是一样的,本质上就是一个套接字客户端,只不过这个套接字客户端是在python程序中用的。
如何使用pymysql模块?
例子说明
# 下载pymysql模块
# pip install pymysql
# 导入pymysql模块
import pymysql
# 1、建立连接
conn = pymysql.connect(
user='root',
password='123',
host='127.0.0.1',
port=3306,
database='day36',
charset='utf8',
# aotucommit=True
)
# 2、获取游标,游标中的参数cursor=pymysql.cursors.DictCursor是确保返回的结果是字典形式
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
username = input("username>>>:").strip()
password = input("password>>>:").strip()
sql = 'select * from user_info where name=%s and password=%s'
# 3、拼接SQL语句
cursor.execute(sql, (username, password))
res = cursor.fetchall()
if res:
print(res)
else:
print("用户名或密码错误!")
# 4、关闭连接,如果设置了aotucommit=True就需要conn.commit()进行确认提交
cursor.close()
sql注入问题
什么是sql注入问题?
sql注入问题就是利用特殊符号,巧妙的绕过真正的SQL校验,这样可以不通过验证就直接进入你的数据库,进行恶意攻击
如何解决sql注入问题?
关键性的数据不要自己动手去拼接,直接交由execute帮你拼接就OK了,就像上面的例子一样
注意
cursor.scroll( 移动个数,移动模式 ),移动模式有 relative(相对) 和absolute(绝对) 两种。
相对移动是从当前游标位置开始往后移动,absolute是从最开始的位置向后移动。
cursor.fetchone( ) 获取一个结果
cursor.fetchmany ( 数量 ) ,获取指定个数的结果,如果数量大于总的个数,不会报错。
cursor.fetchall( ) ,获取所有的结果
数据库——可视化工具Navicat、pymysql模块、sql注入问题的更多相关文章
- Navicat工具、pymysql模块 sql注入
cls超 Navicat工具.pymysql模块 阅读目录 一 IDE工具介绍 二 pymysql模块 一 IDE工具介绍(Navicat) 生产环境还是推荐使用mysql命令行,但为了方便我们测试, ...
- 多表查询、可视化工具、pymysql模块
create table dep( id int primary key auto_increment, name varchar(16), work varchar(16) ); create ta ...
- 1.多表查询 => 转化为一张联合大表 2.可视化工具 3.pymysql模块
多表数据 create table dep( id int primary key auto_increment, name varchar(16), work varchar(16) ); crea ...
- MySQL多表查询,Navicat使用,pymysql模块,sql注入问题
一.多表查询 #建表 create table dep( id int, name varchar(20) ); create table emp( id int primary key auto_i ...
- day40:python操作mysql:pymysql模块&SQL注入攻击
目录 part1:用python连接mysql 1.用python连接mysql的基本语法 2.用python 创建&删除表 3.用python操作事务处理 part2:sql注入攻击 1.s ...
- mysql数据库可视化工具—Navicat Premium—安装与激活
一.Navicat premium简介 Navicat premium是一款数据库管理工具.将此工具连接数据库,你可以从中看到各种数据库的详细信息.包括报错,等等.当然,你也可以通过他,登陆数据库,进 ...
- python 全栈开发,Day63(子查询,MySQl创建用户和授权,可视化工具Navicat的使用,pymysql模块的使用)
昨日内容回顾 外键的变种三种关系: 多对一: 左表的多 对右表一 成立 左边的一 对右表多 不成立 foreign key(从表的id) refreences 主表的(id) 多对多 建立第三张表(f ...
- 可视化工具Navicat的使用/pymysql模块的使用
一.可视化工具Navicat的使用 1.官网下载:http://www.navicat.com/en/products/navicat-for-mysql 2.网盘下载:http://pan.baid ...
- 第八章| 3. MyAQL数据库|Navicat工具与pymysql模块 | 内置功能 | 索引原理
1.Navicat工具与pymysql模块 在生产环境中操作MySQL数据库还是推荐使用命令行工具mysql,但在我们自己开发测试时,可以使用可视化工具Navicat,以图形界面的形式操作MySQL数 ...
随机推荐
- Redis缓存实战教程
目录 Redis缓存 使用缓存Redis解决首页并发问题 1.缓存使用的简单设计 2.Redis的整合步骤 A 将Redis整合到项目中(Redis+Spring) B 设计一个数据存储策越 3.Re ...
- 每次都能让人头大的 Shader -- 从一次简单的功能说起
最近有个功能, 要渲染从主相机视角看到的另一个相机的可视范围和不可见范围, 大概如下图 : 简单来说就是主相机视野和观察者相机视野重合的地方, 能标记出观察者相机的可见和不可见, 实现原理就跟 Sha ...
- 06点击事件 tabBar配置 拨打电话
1== D:\wxxm 项目的地址 2==>tabBar在全局配置中 在pages的同级目录下创建images本地图标 (最好的是在远程获取img 因为微信是有大小限制的) selectedIc ...
- bind 仿造 重写bind
简单版,不带参数 Function.prototype.my_bind = function(targ){ var _this = this; return function(){ _this.app ...
- Basics of Algorithmic Trading: Concepts and Examples
https://www.investopedia.com/articles/active-trading/101014/basics-algorithmic-trading-concepts-and- ...
- Spring事务异常rollback-only 笔记
造成以上异常的原因情形: 在spring里面我们配置了事务的传播机制是REQUIRED,所以这两个事务最终会合并成一个事务.当a方法调用b方法时,程序中a方法中由于某某原因导致抛出异常(或者明确将该事 ...
- xBIM之二:构建墙和门窗
研究了两天,终于实现了利用xBIM自动输出墙和门窗 比较粗糙的源码如下: private void Form1_Load(object sender, EventArgs e) { //first c ...
- B1020 月饼(25分)
#include<cstdio> #include<algorithm> #include<iostream> using namespace std; struc ...
- [LeetCode] 644. Maximum Average Subarray II 子数组的最大平均值之二
Given an array consisting of n integers, find the contiguous subarray whose length is greater than o ...
- 15 张 Vim 速查表奉上,帮你提高N倍效率!
阅读本文大概需要 2.8 分钟. 去年上半年开始全面使用linux进行开发和娱乐了,现在已经回不去windows了. 话归正传,在linux上一直使用vim,慢慢熟悉了它的命令,才终于领悟了什么是编辑 ...