Advertisement
HarrJ

day 25

Feb 28th, 2024 (edited)
925
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 6.36 KB | None | 0 0
  1. package week4b;
  2.  
  3. import java.sql.*;
  4. import javax.swing.JTable;
  5. import javax.swing.table.DefaultTableModel;
  6. public class Day25B {
  7.     private String address = "jdbc:mysql://localhost:3306/db_jtvi_b8_23";
  8.     private String userName = "root"; //default "root"
  9.     private String passWord = "";
  10.    
  11.     public static void main(String[] args) {
  12.         Day25B callMe = new Day25B();
  13.         String[] row1 = {"pet d", "204", "Dummy", "filler"};
  14.         String[] row2 = {"pet e", "205", "Dummy", "filler"};
  15.         String[] row3 = {"pet f", "206", "Dummy", "filler"};
  16.        
  17.         callMe.addThreeRows(row1, row2, row3);
  18.     }
  19.    
  20.     void addThreeRows(String[] row1, String[]row2, String[]row3){
  21.         int rowsAffected = 0;
  22.         try {
  23.             Connection conn = DriverManager.getConnection(address, userName, passWord);
  24.             String sqlQuery = "INSERT INTO tbl_price_list (fld_pname ,fld_price"
  25.                     + " ,fld_manufacturer ,fld_cat_name)"
  26.                     + " VALUES (? ,? ,? ,? );";
  27.             conn.setAutoCommit(false);
  28.             try {
  29.                    
  30.                 PreparedStatement stmt = conn.prepareStatement(sqlQuery);
  31.  
  32.                 stmt.setString(1, row1[0]);
  33.                 stmt.setString(2, row1[1]);
  34.                 stmt.setString(3, row1[2]);
  35.                 stmt.setString(4, row1[3]);
  36.  
  37.                 rowsAffected += stmt.executeUpdate();
  38.  
  39.                 stmt = conn.prepareStatement(sqlQuery);
  40.                 stmt.setString(1, row2[0]);
  41.                 stmt.setString(2, row2[1]);
  42.                 stmt.setString(3, row2[2]);
  43.                 stmt.setString(4, row2[3]);
  44.                 rowsAffected += stmt.executeUpdate();
  45.  
  46.  
  47.                 stmt = conn.prepareStatement(sqlQuery);
  48.                 stmt.setString(1, row3[0]);
  49.                 stmt.setString(2, row3[1]);
  50.                 stmt.setString(3, row3[2]);
  51.                 stmt.setString(4, row3[3]);
  52.                 rowsAffected += stmt.executeUpdate();
  53.             } catch (Exception e) {
  54.                
  55.             }
  56.             if (rowsAffected == 3) {
  57.                 conn.commit();
  58.                 System.out.println("3 rows commit");
  59.             }else {
  60.                 conn.rollback();
  61.                 System.out.println("rollback query");
  62.             }
  63.            
  64.             conn.close();
  65.         } catch (Exception e) {
  66.             System.out.println("exception triggered");
  67.         } finally {
  68.             System.out.println("rows affected: " + rowsAffected);
  69.         }
  70.        
  71.     }
  72.    
  73.     String addFromTable(JTable tblIn) {
  74.         int rowsAffected = 0;
  75.         String resultMsg = "";
  76.         try {
  77.             Connection conn = DriverManager.getConnection(address, userName, passWord);
  78.             String sqlQuery = "INSERT INTO tbl_price_list (fld_pname ,fld_price"
  79.                     + " ,fld_manufacturer ,fld_cat_name)"
  80.                     + " VALUES (? ,? ,? ,? );";
  81.             conn.setAutoCommit(false);
  82.            
  83.             PreparedStatement stmt;
  84.             for (int i = 0; i < tblIn.getRowCount(); i++) {
  85.                 try{
  86.                     stmt = conn.prepareStatement(sqlQuery);
  87.  
  88.                     stmt.setObject(1, tblIn.getValueAt(i, 0));
  89.                     stmt.setObject(2, tblIn.getValueAt(i, 1));
  90.                     stmt.setObject(3, tblIn.getValueAt(i, 2));
  91.                     stmt.setObject(4, tblIn.getValueAt(i, 3));
  92.  
  93.                     rowsAffected += stmt.executeUpdate();
  94.                 } catch (Exception e) {
  95.                     System.out.println("ping");
  96.                     System.out.println(e.toString());
  97.                 }
  98.             }
  99.            
  100.            
  101.             if (rowsAffected == tblIn.getRowCount()) {
  102.                 conn.commit();
  103.                 System.out.println("table transferred");
  104.                 resultMsg = "table transferred";
  105.             }else {
  106.                 conn.rollback();
  107.                 System.out.println("rollback query");
  108.                 resultMsg = "rollback query";
  109.             }
  110.             conn.close();
  111.         } catch (Exception e) {
  112.             System.out.println("exception triggered");
  113.         } finally {
  114.             System.out.println("rows affected: " + rowsAffected);
  115.         }
  116.         return resultMsg;
  117.     }
  118.    
  119.     // 2 things assuming may account level na gagamitin
  120.     int[] loginCheck(String uName, String pWord) {
  121.         int[] userInfo = {0,0}; // ID, LEVEL
  122.         int rowsAffected = 0;
  123.         boolean canContinue = true;
  124.         try {
  125.             Connection conn = DriverManager.getConnection(address, userName, passWord);
  126.             String sqlQuery = "SELECT COUNT(*) FROM tbl_login "
  127.                     + "WHERE fld_username = ? AND fld_password = ?;";
  128.             conn.setAutoCommit(false);
  129.             PreparedStatement stmt = conn.prepareStatement(sqlQuery);
  130.             stmt.setString(1, uName);
  131.             stmt.setString(2, pWord);
  132.             ResultSet rs = stmt.executeQuery();
  133.             rs.next();
  134.             if (rs.getInt(1) == 1) {
  135.                 sqlQuery = "SELECT fld_lid, fld_level FROM tbl_login "
  136.                     + "WHERE fld_username = ? AND fld_password = ?;";
  137.                 stmt = conn.prepareStatement(sqlQuery);
  138.                 stmt.setString(1, uName);
  139.                 stmt.setString(2, pWord);
  140.                 ResultSet rs2 = stmt.executeQuery();
  141.                 rs2.next();
  142.                 userInfo[0] = rs2.getInt(1);
  143.                 userInfo[1] = rs2.getInt(2);
  144.             } else {
  145.                 canContinue = false;
  146.             }
  147.             if (canContinue) {
  148.                 sqlQuery = "UPDATE tbl_login SET fld_last_access = CURRENT_TIMESTAMP()"
  149.                         + " WHERE fld_username = ? AND fld_password = ?;";
  150.                 stmt = conn.prepareStatement(sqlQuery);
  151.                 stmt.setString(1, uName);
  152.                 stmt.setString(2, pWord);
  153.                
  154.                 rowsAffected = stmt.executeUpdate();
  155.                 if (rowsAffected != 1) {
  156.                     canContinue = false;
  157.                 }
  158.             }
  159.            
  160.             if (canContinue) {
  161.                 conn.commit();
  162.             } else {
  163.                 conn.rollback();
  164.             }
  165.             conn.close();
  166.         } catch (Exception e) {
  167.             System.out.println(e.toString());
  168.         }
  169.         return userInfo;
  170.     }
  171. }
  172.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement