使用update在对mysql数据表进行数据更新的时候,出了问题
我的语句sql语句是
sql="update users set user_name="+name+"where user_id="+id+"";name和id都是String 类型的变量程序报异常如下:com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'user_id=33' at line 1看不懂这句话,请大家帮帮忙

解决方案 »

  1.   

    sql="update users set user_name="+name+"where user_id="+id+"";
    user_name和user_id都是字符串吧?至少user_name是字符串吧?而且你where之前还没有空格。sql="update users set user_name='"+name+"' where user_id='"+id+"'";
      

  2.   

    你这sql语句有问题,你最好System.out.println()打印一下
    看着的话应该是username="+username少空格,而且username应该是String类型吧?sql语句里得用单引号引吧,后面id也没有空格,在最后你加一空串干啥啊?
      

  3.   

    单引号加的有问题
    'user_id=33' 
      

  4.   

      缺少  单引号,空格        up up up
      

  5.   

    改成这样: sql="update users set user_name='"+name+"' where user_id='"+id+"'";
      

  6.   

    sql="update users set user_name="+name+"where user_id="+id+""; where  之前加个空格... 忒明显了
      

  7.   

    String name="张三";
    String id="zhangsan001";
    String sql="update users set user_name="+name+"where user_id="+id+"";
    System.out.println(sql);   打印结果为:
                 update users set user_name=张三where user_id=zhangsan001 
       很明显:
                   sql语句这样写才对
           String sql="update users set user_name="'+name+"' where user_id='"+id+"'";
      

  8.   


    在控制台输出来看看,然后在数据库执行下就知道错误在哪里了。
    sql="update users set user_name = '"+name+"' where user_id = '"+id+"'";