zoukankan      html  css  js  c++  java
  • java的PreparedStatement中使用like时的问题

    SQL:select * from students where name like '%tommy%';

    正常的sql如上,是可以直接执行的,

    那放到java的P热怕热的Statement中就应该是:

    //同时把tommy改成通配符?

    PreparedStatement pstmt1 = conn.prepareStatement("select * from student where name like '%?%'");

    pstmt1.setString(1,"tommy");//这里居然不通过

    解决方法一:使用拼接字符串

    PreparedStatement pstmt1 = conn.prepareStatement("select * from student where name like '%"+tommy+"%'");

    解决方法二:灵活变通(其实就是通配符?不能放在''单引号中)

    PreparedStatement pstmt1 = conn.prepareStatement("select * from student where name like ?");

    pstmt1.setString(1,"%"+"tommy"+"%");

  • 相关阅读:
    python之timeit模块
    python isinstance函数
    继承
    冒泡排序&&选择排序
    监听器
    被钝化的代码
    Ajax验证用户名
    原生ajax访问服务器所展现的现象
    今天
    随机点名
  • 原文地址:https://www.cnblogs.com/tommy-huang/p/4180130.html
Copyright © 2011-2022 走看看