Jave conn to Oracle问题

java.sql.SQLException: ORA-01008: 并非所有变量都已绑定 

-- 

此异常为sql异常,我遇到的时候看java代码如下 
conn_orca_open();
		java.text.SimpleDateFormat df = new SimpleDateFormat(
				"yyyy-MM-dd HH:mm:ss");
		java.util.Date time = null;
		try {
			time = df.parse(df.format(new Date()));


		} catch (ParseException e) {


			e.printStackTrace();
		}


		java.sql.Timestamp st = new java.sql.Timestamp(time.getTime());


		String sqlString = "INSERT INTO DDS(STATUS,Y,WINPRO,INIT_DATE,PS) VALUES(?,?,?,?,?)";
		try {
			pre = con.prepareStatement(sqlString);
			pre.setString(1, "2132221");
			pre.setString(2, "0011");
			pre.setFloat(3, 4f);
			pre.setTimestamp(4, st);
			pre.setString(5, "JAVA");
			pre.executeUpdate(sqlString);
		} catch (SQLIntegrityConstraintViolationException e) {
			System.out.println("insert_error,already existed in database.");
		} catch (Exception e) {
			// SQLIntegrityConstraintViolationException
			e.printStackTrace();
			try {
				con.rollback();
			} catch (SQLException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
			try {
				con.setAutoCommit(true);
			} catch (SQLException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
			// e.printStackTrace();
		} finally {
			try {
				con.commit();
				if (pre != null)
					pre.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		conn_orca_close();


看到预编译所有的变量确实都绑定了问题出在哪呢
在网上找了找才发现 
conn_orca_open();
		java.text.SimpleDateFormat df = new SimpleDateFormat(
				"yyyy-MM-dd HH:mm:ss");
		java.util.Date time = null;
		try {
			time = df.parse(df.format(new Date()));


		} catch (ParseException e) {


			e.printStackTrace();
		}


		java.sql.Timestamp st = new java.sql.Timestamp(time.getTime());


		String sqlString = "INSERT INTO DDS(STATUS,Y,WINPRO,INIT_DATE,PS) VALUES(?,?,?,?,?)";
		try {
			pre = con.prepareStatement(sqlString);
			pre.setString(1, "2132221");
			pre.setString(2, "0011");
			pre.setFloat(3, 4f);
			pre.setTimestamp(4, st);
			pre.setString(5, "JAVA");
			pre.executeUpdate();
		} catch (SQLIntegrityConstraintViolationException e) {
			System.out.println("insert_error,already existed in database.");
		} catch (Exception e) {
			// SQLIntegrityConstraintViolationException
			e.printStackTrace();
			try {
				con.rollback();
			} catch (SQLException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
			try {
				con.setAutoCommit(true);
			} catch (SQLException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
			// e.printStackTrace();
		} finally {
			try {
				con.commit();
				if (pre != null)
					pre.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		conn_orca_close();
只因自己粗心大意酿成的错误,做事一定要细心咯;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值