Ha több SQL utasításunk van, amit futtatni kell, az addBatch() metódussal felvehetjük őket, majd az executeBatch() metódussal egyszerre futtatjuk őket, egymás után.
Statement stmt = c.createStatement(); String sql1 = "create database vmi1"; String sql2 = "create database vmi2"; String sql3 = "create database vmi3"; stmt.addBatch(sql1); stmt.addBatch(sql2); stmt.addBatch(sql3); stmt.executeBatch();
if (conn != null) { DatabaseMetaData meta = conn.getMetaData(); System.out.println("Driver név: " + meta.getDriverName()); }
Használható metódusok:
String sql = "insert into tabla1 (name) values(?)"; PreparedStatement pstmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS); pstmt.setString(1, "János") pstmt.execute(); ResultSet rs = pstmt.getGeneratedKeys(); int genKey = 0; if (rs.next()) { genKey = rs.getInt(1); } System.out.println("az: " + genKey);
import java.util.logging.Level; import java.util.logging.Logger; //... try { //... }catch(SQLException ex) { Logger.getLogger(Mariadb.class.getName()).log(Level.SEVERE, null, ex); }
A „Mariadb” az az osztály, amelyben a kapcsolatot létrehozzuk.
A MariaDB driver ellenőrzése:
Class.forName("org.mariadb.jdbc.Driver");
import java.sql.SQLException; import java.sql.Statement; import java.sql.Connection; import java.sql.ResultSet; import java.sql.DriverManager; import java.util.ArrayList; class App { public static ArrayList<Employee> getEmployees() { ArrayList<Employee> employeeList = new ArrayList<>(); Connection conn = null; try { Class.forName("org.mariadb.jdbc.Driver"); String url = "jdbc:mariadb://localhost:3306/surubt"; conn = DriverManager.getConnection(url, "surubt", "titok"); String sql = "select * from employees"; Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery(sql); while(rs.next()) { Employee emp = new Employee( rs.getInt("id"), rs.getString("name"), rs.getString("city"), rs.getDouble("salary"), rs.getDate("birth").toLocalDate() ); employeeList.add(emp); } }catch(SQLException ex) { System.err.println("Hiba! Az SQL művelet sikertelen!"); System.err.println(ex.getMessage()); }catch(ClassNotFoundException ex) { System.err.println("Hiba! A MariaDB driver nem található!"); System.err.println(ex.getMessage()); } return employeeList; } public static void main(String[] args) { ArrayList<Employee> employeeList; employeeList = getEmployees(); employeeList.forEach(emp -> { System.out.println(emp.name); }); } }