Advertisement
Guest User

Untitled

a guest
Jan 17th, 2018
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.93 KB | None | 0 0
  1. /*
  2.  * To change this license header, choose License Headers in Project Properties.
  3.  * To change this template file, choose Tools | Templates
  4.  * and open the template in the editor.
  5.  */
  6. package kjnkfdsf;
  7.  
  8. import java.sql.Connection;
  9. import java.sql.DatabaseMetaData;
  10. import java.sql.DriverManager;
  11. import java.sql.ResultSet;
  12. import java.sql.SQLException;
  13. import java.sql.Statement;
  14. import java.util.logging.Level;
  15. import java.util.logging.Logger;
  16. import javax.swing.JOptionPane;
  17.  
  18. /**
  19.  *
  20.  * @author fis4u
  21.  */
  22. public class Konekcja {
  23.     Connection con;
  24.     boolean connected = false;
  25.     boolean created = false;
  26.    
  27.     public boolean isConnected() {
  28.         return connected;
  29.     }
  30.    
  31.     public boolean isCreated() {
  32.         return connected;
  33.     }
  34.    
  35.     private void connectDatabase() {
  36.         try {
  37.             // Stworzenie połączenia
  38.             con = DriverManager.getConnection("jdbc:sqlite:moja_baza.db");
  39.            
  40.             // Pobranie meta danych bazy
  41.             DatabaseMetaData dbm = con.getMetaData();
  42.             try (
  43.                 // Pobranie tabeli
  44.                 ResultSet tables = dbm.getTables(null, null, "uzytkownicy", null)) {
  45.                 created = tables.next();
  46.             }
  47.            
  48.             connected = true;
  49.            
  50.             System.out.println("Udało się połączyć z bazą!");
  51.         } catch (SQLException ex) {
  52.             JOptionPane.showMessageDialog(null, "Nie udało się połączyć z bazą!");
  53.         }
  54.     }
  55.    
  56.     private void disconnectDatabase() {
  57.         try {
  58.             con.close();
  59.             connected = false;
  60.         } catch (SQLException ex) {
  61.             JOptionPane.showMessageDialog(null, "Nie udało się rozłączyć!");
  62.         }
  63.     }
  64.    
  65.     void addRecord(String login) {
  66.         if(login.isEmpty()) {
  67.             JOptionPane.showMessageDialog(null, "Oba pola muszą być wypełnione!");
  68.         }
  69.        
  70.         connectDatabase();
  71.        
  72.         if(!isConnected()) {
  73.             JOptionPane.showMessageDialog(null, "Nie udało się połączyć z bazą!");
  74.         }
  75.        
  76.         if(!isCreated()) {
  77.             JOptionPane.showMessageDialog(null, "Tabela nie istnieje w bazie!");
  78.         } else {
  79.             try {
  80.                 Statement st = con.createStatement();
  81.                 st.executeUpdate("INSERT INTO uzytkownicy (login) VALUES ('" + login + "')");
  82.                 st.close();
  83.                
  84.                 JOptionPane.showMessageDialog(null, "Udało się dodać do bazy!");
  85.             } catch (SQLException ex) {
  86.                 Logger.getLogger(Konekcja.class.getName()).log(Level.SEVERE, null, ex);
  87.             }
  88.         }
  89.        
  90.         disconnectDatabase();
  91.     }
  92.    
  93.     void selectAll() {
  94.         connectDatabase();
  95.        
  96.         if(!isConnected()) {
  97.             JOptionPane.showMessageDialog(null, "Nie udało się połączyć z bazą!");
  98.         }
  99.        
  100.         if(!isCreated()) {
  101.             JOptionPane.showMessageDialog(null, "Tabela nie istnieje w bazie!");
  102.         } else {
  103.             Statement st;
  104.             try {
  105.                 st = con.createStatement();
  106.                 ResultSet result = st.executeQuery("SELECT * FROM uzytkownicy");
  107.                 String finali = new String();
  108.                
  109.                 while(result.next()) {
  110.                     String val = result.getString(1) + ". " + result.getString(2) + " " + result.getString(3) + " " + result.getString(4) + "\n";
  111.                     finali += val;
  112.                 }
  113.                
  114.                 JOptionPane.showMessageDialog(null, finali);
  115.                 st.close();
  116.                 result.close();
  117.             } catch (SQLException ex) {
  118.                 Logger.getLogger(Konekcja.class.getName()).log(Level.SEVERE, null, ex);
  119.             }
  120.         }
  121.        
  122.         disconnectDatabase();
  123.     }
  124.    
  125.     void createTable() {
  126.         connectDatabase();
  127.        
  128.         if(!isConnected()) {
  129.             JOptionPane.showMessageDialog(null, "Nie udało się połączyć!");
  130.         }
  131.        
  132.         if(isCreated()) {
  133.             JOptionPane.showMessageDialog(null, "Tabela już istnieje w bazie!");
  134.         } else {
  135.             try {
  136.                 Statement st = con.createStatement();
  137.                 String query = "CREATE TABLE uzytkownicy ("
  138.                              + "id INTEGER PRIMARY KEY AUTOINCREMENT,"
  139.                              + "login TEXT NOT NULL,"
  140.                              + "haslo TEXT,"
  141.                              + "rola INTEGER)";
  142.                 st.executeUpdate(query);
  143.                 st.close();
  144.                
  145.                 JOptionPane.showMessageDialog(null, "Stworzono tabele!");
  146.                 created = true;
  147.             } catch (SQLException ex) {
  148.                 JOptionPane.showMessageDialog(null, "Nie udało się stworzyć tabeli!");
  149.             }
  150.         }
  151.        
  152.         disconnectDatabase();
  153.     }
  154. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement