加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sqlserver和sybase数据库插入表数据返回主键的不同

发布时间:2020-12-12 14:36:09 所属栏目:MsSql教程 来源:网络整理
导读:做个记录,以后碰到了也可以看看。 public int addUserLog(final UserLog userLog) { if(userLog==null) return -1; if(JdbcUtil.isSybaseIQ){ int key = -1; try{ String dateStr = UserLogUtil.getDateStr(new Date()); String values = userLog.getUserId
做个记录,以后碰到了也可以看看。 public int addUserLog(final UserLog userLog) { if(userLog==null) return -1; if(JdbcUtil.isSybaseIQ){ int key = -1; try{ String dateStr = UserLogUtil.getDateStr(new Date()); String values = userLog.getUserId()+","+userLog.getOperateType()+",'"+ userLog.getDescription()+"','"+dateStr+"'"; final String sql = "insert into ps_user_log (userId,operateType,description,createTime) values("+values+")"; Connection conn = this.getConnection(); Statement objStatement = conn.createStatement(); objStatement .executeUpdate(sql,Statement.RETURN_GENERATED_KEYS); ResultSet objResultSet = objStatement.getGeneratedKeys(); if (objResultSet.next()) { key = objResultSet.getInt(1); } return key; }catch (Exception e) { logger.error("addUserLog error : ",e); e.printStackTrace(); return key; } }else{ try{ final String sql = "insert into ps_user_log (userId,createTime) values(?,?,?)"; PreparedStatementCreator psc = new PreparedStatementCreator() { public PreparedStatement createPreparedStatement(Connection conn) throws SQLException { PreparedStatement ps=JdbcUtil.createPrepareStatement(conn,sql); ps.setInt(1,userLog.getUserId()); ps.setInt(2,userLog.getOperateType()); ps.setString(3,userLog.getDescription()); ps.setDate(4,new java.sql.Date(System.currentTimeMillis())); return ps; } }; KeyHolder kh = new GeneratedKeyHolder(); return getJdbcTemplate().update(psc,kh); }catch(Exception e){ e.printStackTrace(); return -1; } } } 顺便再提一句,sybase数据库中不能保存Boolean类型的数据,必须转换成int值,sqlserver则可以,但其保存在数据库的值也是按照int型来保存的,1:true 0:false

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读