sql中#与$有什么区别


本文摘自PHP中文网,作者醉折花枝作酒筹,侵删。

本篇文章给大家介绍一下sql中#与$的区别。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

在这里用到了#{},使用#时:

1、用来传入参数,sql在解析的时候会加上“”,当成字符串来解析 ,如这里 role_id = “roleid”;

2、#{}能够很大程度上防止sql注入;

延伸:

1、用传入数据直接显示在生成的sql中,如上面的语句,用roleid=传入数据直接显示在生成的sql中,如上面的语句,用roleid={roleId,jdbcType=INTEGER},那么sql在解析的时候值为roleId = roleId,执行时会报错;

2、${}方式无法防止sql注入;

3、$一般用入传入数据库对象,比如数据库表名;

4、能用#{}时尽量用#{};

注意:

mybaties排序时使用order by 动态参数时需要注意,使用${}而不用#{};

相关推荐:《mysql教程》

以上就是sql中#与$有什么区别的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

sql查询中group by的含义是什么?

sql学习第一天——sql 练习题(建表sql语句)

图文详解mysql中如何查看sql语句的执行时间

sqlserver查询所有数据库名,表名,和字段名的语句

sqlserver复制数据库的方法步骤(图文)

mysql查询求积的函数是什么

sqlplus命令操作用法详解

非常详细的sql--join之完全用法

mysql中存储过程的详细详解

mysql优化常用的19种有效方法(推荐!)

更多相关阅读请进入《sql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...