旗下导航:搜·么
当前位置:网站首页 > MySQL教程 > 正文

#和$的区分【MySQL教程】,#,$,区别

作者:搜教程发布时间:2019-12-01分类:MySQL教程浏览:19评论:0


导读:他们之间的区分用最直接的话来讲就是:#相当于对数据加上双引号,$相当于直接显现数据。1、#对传入的参数视为字符串,也就是它会预编译select*fromuse...

他们之间的区分用最直接的话来讲就是:#相当于对数据 加上 双引号,$相当于直接显现数据。

1、#对传入的参数视为字符串,也就是它会预编译

select * from user where name = #{name}

比方我传一个csdn,那末传过来就是

select * from user where name = 'csdn'

2、$将不会将传入的值举行预编译

select * from user where name=${name}

比方我穿一个csdn,那末传过来就是

select * from user where name=csdn

3、#的上风就在于它能很大水平的防备sql注入,而$则不可。

比方:用户举行一个登录操纵,背景sql考证式样的:

select * from user where username=#{name} and password = #{pwd}

假如前台传来的用户名是“wang”,暗码是 “1 or 1=1”,用#的体式格局就不会涌现sql注入,而假如换成$体式格局,sql语句就变成了

select * from user where username=wang and password = 1 or 1=1

如许的话就形成了sql注入。

4、MyBatis排序时运用order by 动态参数时须要注重,用$而不是#。

引荐教程:mysql教程

以上就是#和$的区分的细致内容,更多请关注ki4网别的相干文章!

标签:#$区别


欢迎 发表评论: