请问这么些有问题吗?String sql = "select * from '"+act+"'";act是字符串,里面是数据库里表的某一列的名字新手求带啊

解决方案 »

  1.   

    2个单引号去掉 表明不用加 只有列名 为字符才加
     select form 表名 where 列名='aa'  这样
      

  2.   

    噢噢打错饿了。。那String sql2 ="update StatisticsTable set '"+act+"'='"+act+"'+1";
    是不是也错了呢?我运行的时前面都顺利,运行到下面的
    PreparedStatement ps2 = conn.prepareStatement(sql2);
    int row1 = -1;
    row1 = ps2.executeUpdate();----这里就报错了,弹到catch里了。怎么回事啊?
      

  3.   

    写成这样试试:String sql2 ="update StatisticsTable set "+act+" ='"+act+"'+1";在这里,列的名字不要加单引号,加单引号的地方,是修改或者插入某条字段时,并且这个字段时字符型的。两外,你的这个sql语句我觉得还有一个地方有问题,就是后面+1是什么意思?
      

  4.   


    还是不行,运行到row1 = ps2.executeUpdate();就不行啦。这句没有运行怎么回事,之前的经验来看应该是sql2有问题
      

  5.   


    String sql2 ="update StatisticsTable set "+act+" ='"+act+"'";首先如果你这条语句执行正确的话、他会更新你这张表中的所有记录!
       那么如果你只是要更新某一条记录的话。必须加上where条件!
    System.out.println(sql2);
    吧输出的sql2变量拿去数据执行!
    看看是什么错误!
    act这个列是什么类型啊?如果是数值类型就不要加上''号了!
    如果是字符类型就要加上他!