程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> java-向mysql數據庫中插入數據時報錯

java-向mysql數據庫中插入數據時報錯

編輯:編程綜合問答
向mysql數據庫中插入數據時報錯
public class categorydao {
    public static void save(category c) throws SQLException{
        Connection conn=(Connection) DB.getConnection();
        String sql=null;
        if(c.getId()==-1){
            sql="insert into category values(null,?,?,?,?,?)";  
        }else{
          sql="insert into category values("+c.getId()+",?,?,?,?,?)";
          } 
        PreparedStatement ps=conn.prepareStatement(sql);
        try {
            ps.setString(1,c.getName() );
            ps.setString(2,c.getDescr());
            ps.setInt(3, c.getPid());
            ps.setInt(4, c.isIsleaf()?0:1);
            ps.setInt(5, c.getGrade());
            ps.executeUpdate();

        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally{
            DB.free(null, ps, conn);
        }

    }

錯誤如下:(反正插入不了)

com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry '1' for key 'PRIMARY'

最佳回答:


主健內空重復了
主健設置自增了沒?有沒有使用外健?
不需要插入主鍵的值,在插入的時候指定字段例如

insert into myTable1(name,age) values("zhangSam",18);
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved