博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL的简单操作方法:PreparedStatement
阅读量:5901 次
发布时间:2019-06-19

本文共 2794 字,大约阅读时间需要 9 分钟。

hot3.png

preparedStatement 的两种使用方式:

方式1:使用preparedStatement选择数据,读取数据:

使用preparedStatement插入数据的数据库:public boolean saveComment(Comment comment) {        Connection connection = DBUtil.getConn();        String sql = "insert into comment values (null,?,?,?,?)";        PreparedStatement preparedStatement = null;        boolean flag = false;        try {            preparedStatement = connection.prepareStatement(sql);            preparedStatement.setString(1, comment.getCommenttext() + "");            preparedStatement.setString(2, comment.getCommenttime() + "");            preparedStatement.setString(3, comment.getUserid() + "");            preparedStatement.setString(4, comment.getArticleid() + "");            int isOk = preparedStatement.executeUpdate();            if (isOk > 0) {                return !flag;            } else {                return flag;            }        } catch (SQLException e) {            e.printStackTrace();        }        DBUtil.close(connection, null, preparedStatement, null);        return flag;    }

 

 

方式2:

 

public int insert(Orders orders){				//		try {//			testSessionDowork();//		} catch (Exception e) {//			// TODO Auto-generated catch block//			e.printStackTrace();//		}	    		Session session = getSession();//		session.beginTransaction().begin();;		try {			session.doWork(new Work() {								@Override				public void execute(Connection arg0) throws SQLException {					//通过JDBC 原生API 进行操作,效率最高,速度最快//					String sql = "";					//preparedStatement = arg0.prepareStatement(sql);//准备执行语句  										//int Res = statement.executeUpdate(sql);					if(orders == null){						return ;					}					DateFormat simpleDateFormat= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");   //创建一个格式化日期对象			        String currentTime = simpleDateFormat.format(orders.getCreateTime());   //格式化后的时间					String sql = "INSERT INTO orders "							+ ""							+ "				( total, create_time, STATUS, pay_status, member_id, ship_area, ship_address, ship_mobile ) "							+ "   VALUES "							+ " "							+ "  			( "+orders.getTotal()+", '"+currentTime+"', '"+orders.getStatus()+"', '"+orders.getPayStatus()+"', '"+orders.getMemberId()+"', '"+orders.getShipArea()+"', '"+orders.getShipAddress()+"', '"+orders.getShipMobile()+"' )";			        					System.out.println("orders insert sql :" + sql);									number = preparedStatement.executeUpdate(sql);										System.out.println(number > 0 ? "插入数据成功" : "插入数据失败");									}			});			//			session.getTransaction().commit();		} catch (Exception e) {			// TODO: handle exception			e.printStackTrace();		}finally{			doClose(null, preparedStatement, rs);		}				return number;	}

 

 

注意:

方式1:

 int isOk = preparedStatement.executeUpdate(); 没有参数sql

方式2:

 number = preparedStatement.executeUpdate(sql);有参数sql

 

 

参考链接:

 

转载于:https://my.oschina.net/qimhkaiyuan/blog/1584385

你可能感兴趣的文章
260. Single Number III
查看>>
Hadoop生态圈-Kafka的完全分布式部署
查看>>
[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1
查看>>
jQuery自动完成点击html元素
查看>>
[算法]基于分区最近点算法的二维平面
查看>>
webpack多页应用架构系列(七):开发环境、生产环境傻傻分不清楚?
查看>>
笨办法学C 练习1:启用编译器
查看>>
树的总结--树的性质(树的深度) leetcode
查看>>
nagios短信报警(飞信fetion20080522004-linrh4)
查看>>
【Android游戏开发之六】在SurfaceView中添加组件!!!!并且相互交互数据!!!!...
查看>>
linux 将大文件分成小文件
查看>>
CCNA- 距离矢量路由协议学习
查看>>
企业实践用户邮箱导入/导出(第2部分)
查看>>
如何学习Linux命令-初级篇
查看>>
从Oracle Public Yum为Oracle Linux建立本地的Yum源
查看>>
在 SELECT 查询中使用表表达式
查看>>
静态路由和默认路由
查看>>
关于阿里开发者招聘节 |这5道笔试真题 你会吗!???
查看>>
C#的异常处理机制
查看>>
vsftp:500 OOPS: could not bind listening IPv4 sock
查看>>