The transaction is a set of Sql statement that can be executed as a single unit.the transaction is complete only when all the sql statements in a transaction excute successfully.if any one of the sql statement in the transaction fails the entire transaction is rolled back.



paste the code inside the main method
import java.sql.*;
public class Transaction
{
public static void main(String args[])
{
Connection con;
PreparedStatement ps1;
try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost/vmproducts","root","");
con.setAutoCommit(false);
ps1 = con.prepareStatement("insert into product(pname,price,qty)values(?,?,?)");
ps1.setString(1,"Mouse");
ps1.setInt(2,15000);
ps1.setInt(3,100);
int first = ps1.executeUpdate();
System.out.println("First Row Inserted but not commited");
ps1 = con.prepareStatement("insert into product(pname,price,qty)values(?,?,?)");
ps1.setString(1,"Keyborad");
ps1.setInt(2,5000);
ps1.setInt(3,500);
int second = ps1.executeUpdate();
System.out.println("Second Row Inserted but not commited");
ps1 = con.prepareStatement("insert into product(pname,price,qty)values(?,?,?)");
ps1.setString(1,"Printer");
ps1.setInt(2,10000);
ps1.setInt(3,100);
int third = ps1.executeUpdate();
System.out.println("Third Row Inserted but not commited");
/*Commit a trasaction */
con.commit();
System.out.println("Transaction Commitedddddd");
} catch (ClassNotFoundException | SQLException e)
{
e.printStackTrace();
}
}
}
I have attached the video tutorial below it will help you to do this step by step.