ITPub博客

首页 > 数据库 > Oracle > oracle myintis 转义

oracle myintis 转义

原创 Oracle 作者:mcxiaoracle 时间:2019-11-18 21:17:15 0 删除 编辑

{} 和 ${}区别

#{}在引用时,如果发现目标是一个字符串,则会将其值作为一个字符串拼接在sql上,即拼接时自动包裹引号

${}在引用时,即使发现目标是一个字符串,也不会作为字符串处理,拼接在sql时不会自动包裹引号

例如:

所以通常情况下,使用#{}


insert into user values (null,#{name},55); --> insert into user values (null,'fff',55);

insert into user values (null,${name},55); --> insert into user values (null,fff,55);//sql语句错误

1

2

而如果需要引用的是一个列名,使用${}


select * from user order by #{cname}; --> select * from user order by 'age';//sql语句错误

select * from user order by ${cname}; --> select * from user order by age;

————————————————

版权声明:本文为CSDN博主「baishancha」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/baishancha/article/details/94574127


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69949806/viewspace-2664710/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: Oracle
请登录后发表评论 登录
全部评论
数据方向,了解oracle ,IBM DB2 730

注册时间:2019-09-30

  • 博文量
    286
  • 访问量
    226631