sql注入问题-视图-事物-以及存储过程(可视化工具)

可视化工具(了解)

可视化工具  workbench

视图

视图 
是一张虚拟的表 

语法:
    create view 视图表名 as select * from t1;
 
作用;
1.他是执行as 后面的sql 语法得到的一张查表
2.可以对视图进行修改,修改后会同步原表,但修改原表不会同步到视图表里,因为视图表是执行sql语句查看原表得到的一张表
3 视图是永久存储的,存储的不是数据,存储的是as 后面的sql 语句

 sql注入问题

sql注入攻击问题
意思是一些懂sql语法的人,会输入一些关键字,--,where等时,从而跳过登陆或者删除数据库
所以我们可以加入限制条件,
但是无法避免  中间人攻击(在你的客户端和服务器中间加一个中转服务器)
这样就绕过了客户端的输入限制   此时 只能将 sql合法性验证放在服务器端

count = cursor.execute("select *from user where user = %s and pwd = %s;",args=(input("user"),input("pwd")))

事物

事物
就是一组 sql 语句的集合,他是原子性的,要么全部执行,要么都不执行
重点掌握两点:mysql服务端自动提交 一条sql语句就是一个单独事物
            pymysql  需要手动提交 默认开启了事物

start transaction  开启事物
comit 提交
rollback 撤销

存储过程

存储过程
可以理解为mysql 的存储过程
简单的说就是用mysql 写函数
实际上就是一个函数

语法:
在mysql 中调用函数用 call 
delimite //
create procedure 过程的名字 ( in/out/inout 数据名称 数据类型  )
bigin
# 一些sql语句
while ( i<100 ) do
insert into t1 value( n ,concat(“egon”,n) )
set n = n+1
end while 
end //
delimite ; 
原文地址:https://www.cnblogs.com/liu--huan/p/9668986.html