Fearlie_Nathan 2015-04-12 09:06 采纳率: 100%
浏览 1500
已采纳

关于JSP链接SQL的问题

老师现在教的是jdbc.odbc连接数据库,我做的是jsp网页更新数据库操作(简单程度):

  try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}
catch(ClassNotFoundException e){out.println(e.getMessage());}
try{Connection conn=DriverManager.getConnection ("jdbc:odbc:logon","sa","sa");
 String leixing=request.getParameter("leixing");
 String ipt=Bytes(request.getParameter("ipt"));
 String account=request.getParameter("account");

 PreparedStatement pst=conn.prepareStatement("update user1 set ?=? where account=?"); 

   pst.setString(1,ipt);
   pst.setString(2,account);

其实我想问,sql语句set后面的问号为什么没起作用,我的leixing是从另外一个表单取到值了的,但是就是无法更新sql里面的数据。(account是另一个页面用户输入的学号,leixing是另一个界面用户选择要修改哪一列数据,取到的列名和sql里的列名一样,ipt指把那一列某个数据改成ipt从用户输入取到的数据)但是就是leixing有值,第一个问号得不到取的值,但是把第一个问号改成要修改的列名数据库就能更新,我就不知道怎么解决了。

  • 写回答

3条回答 默认 最新

  • lhl_lqc 2015-04-12 09:25
    关注

    如果按照你这样写,那应该有三个参数,第一个是列名,第二个是列名对应的值,第三个是account对应的值。不过一般情况下都是写好列名,然后set列名对应的值,就像你where后面的account就是直接写好的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥100 无网格伽辽金方法研究裂纹扩展的程序
  • ¥15 如何用数码管显示学号(相关搜索:单片机)
  • ¥15 错误于library(org.Hs.eg.db): 不存在叫‘org.Hs.eg.db’这个名称的程序包,如何解决?
  • ¥60 求一个图片处理程序,要求将图像大小跟现实生活中的大小按比例联系起来的
  • ¥50 求一位精通京东相关开发的专家
  • ¥100 求懂行的大ge给小di解答下!
  • ¥15 pcl运行在qt msvc2019环境运行效率低于visual studio 2019
  • ¥15 MAUI,Zxing扫码,华为手机没反应。可提高悬赏
  • ¥15 python运行报错 ModuleNotFoundError: No module named 'torch'
  • ¥100 华为手机私有App后台保活