jdbc mysql 事务_JDBC系列教材 (八)- 如何在JDBC中使用事务

package jdbc;

import java.sql.*;

import java.util.Scanner;

public class TestJDBC {

public static void init()

{

try {

Class.forName("com.mysql.jdbc.Driver");

} catch (ClassNotFoundException e) {

e.printStackTrace();

}

}

public static void prepreadS(int count)

{

String sql = "insert into hero values(null,?,?,?)";

try(Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mybase?characterEncoding=UTF-8",

"root","admin");

PreparedStatement ps= c.prepareStatement(sql);) {

long startTime = System.currentTimeMillis();

for(int i =0 ; i

ps.setString(1,"hero"+i);

ps.setFloat(2,(500+i));

ps.setInt(3,(100+i));

ps.execute();

}

long endTime = System.currentTimeMillis();

long time = (endTime-startTime);

System.out.printf("插入%d条数据共耗时%d毫秒%n",count,time);

} catch (SQLException e) {

e.printStackTrace();

}

}

public static void statmentS(int count)

{

try(Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mybase?characterEncoding=UTF-8",

"root","admin");

Statement s= c.createStatement();) {

long startTime = System.currentTimeMillis();

for(int i =0 ; i

String sql = "insert into hero values(null,"+"'惠桢'"+","+(675+i)+","+(100+i)+")";

s.execute(sql);

}

long endTime = System.currentTimeMillis();

long time = (endTime-startTime);

System.out.printf("插入%d条数据共耗时%d毫秒%n",count,time);

} catch (SQLException e) {

e.printStackTrace();

}

}

public static void list(int start,int count)

{

try(Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mybase?characterEncoding=UTF-8",

"root","admin");

Statement s= c.createStatement();) {

// String sql = "select*from hero limit "+start+","+count+"";

// ResultSet rs =s.executeQuery(sql);

// while (rs.next()) {

// int id = rs.getInt("id");

// String name = rs.getString(2);

// float hp = rs.getFloat(3);

// int damage=rs.getInt(4);

// System.out.printf("%d\t%s\t%.0f\t%d%n",id,name,hp,damage);

// }

System.out.println("执行成功");

} catch (SQLException e) {

e.printStackTrace();

}

}

public static void main(String[] args) {

init();

try(Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mybase?characterEncoding=UTF-8",

"root","admin");

Statement stQuery= c.createStatement();

Statement stDelete=c.createStatement();

Scanner s= new Scanner(System.in)) {

c.setAutoCommit(false);

ResultSet rs = stQuery.executeQuery("select id from Hero order by id asc limit 0,10 ");

while (rs.next())

{

int id = rs.getInt(1);

System.out.println("试图删除"+id+"的数据");

stDelete.execute("delete from Hero where id = " +id);

}

while (true)

{

System.out.println("是否要删除数据Y/N");

String str = s.next();

if("Y".equals(str))

{

c.commit();

System.out.println("提交删除");

break;

}else if("N".equals(str))

{

System.out.println("取消删除");

break;

}

}

// String sql = "insert into hero values(null,"+"'惠桢'"+","+675+","+(100+i)+")";

// String sql = "delete from hero where id="+i+"";

// String sql = "select*from hero";

// ResultSet rs =s.executeQuery(sql);

// while (rs.next())

// {

// int id = rs.getInt("id");

// String name = rs.getString(2);

// float hp = rs.getFloat(3);

// int damage=rs.getInt(4);

// System.out.printf("%d\t%s\t%.0f\t%d%n",id,name,hp,damage);

// }

// System.out.println("查询成功");

// ps.setString(1,"盖伦");

// ps.setFloat(2,546);

// ps.setInt(3,100);

// ps.execute();

//

// ResultSet rs = ps.getGeneratedKeys();

// if(rs.next())

// {

// int id = rs.getInt(1);

// System.out.println(id);

// }

} catch (SQLException e) {

e.printStackTrace();

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值