你可能是字段名写错了,检查你的SQL语句。

解决方案 »

  1.   

    String item=groupslist.getSelectedItem().toString();//组合框的值
            item=item.concat(",'"+teachlist.getSelectedItem().toString()+"'");
            for(int i=0;i<tf.length;i++)
              item=item.concat(",'"+tf[i].getText()+"'");
            try{
              PreparedStatement p=c.cn.prepareStatement("insert into "+
                                 groupslist.getSelectedItem().toString()+" values("+
                                 item+")");
              p.executeUpdate();根据输入的值,向数据库插入,是不是与表的设置有关,有两个日期,一个货币字段,其它都是文本
      

  2.   

    PreparedStatement是预编译的,需要?作为替换参数。
    你把这两句:
    PreparedStatement p=c.cn.prepareStatement("insert into "+ groupslist.getSelectedItem().toString()+" values("+
                                 item+")");
    p.executeUpdate();
    换成:
    Statement stmt=cn.createStatement();
    stmt.executeUpdate("INSERT INTO "+ groupslist.getSelectedItem().toString()+" VALUES('" + item + "')");
      

  3.   

    VALUES('" + item + "')
    应该这么写。你是这么写的吗?