Выполнение команд. Метод executeUpdate
Для взаимодействия с базой данных приложение отправляет серверу MySQL команды на языке SQL. Чтобы выполнить команду, вначале необходимо создаеть объект Statement.
Для его создания у объекта Connection вызывается метод createStatement():
Statement statement = conn.createStatement();
Для выполнения команд SQL в классе Statement определено три метода:
Рассмотрим метод executeUpdate(). В качестве параметра в него передается собственно команда SQL:
int executeUpdate("Команда_SQL")
Ранее была создана база данных store, но она пустая, в ней нет таблиц и соответственно данных. Создадим таблицу и добавим в нее начальные данные:
import java.sql.*; public class Program{ public static void main(String[] args) { try{ String url = "jdbc:mysql://localhost/store?serverTimezone=Europe/Moscow&useSSL=false"; String username = "root"; String password = "password"; Class.forName("com.mysql.cj.jdbc.Driver").getDeclaredConstructor().newInstance(); // команда создания таблицы String sqlCommand = "CREATE TABLE products (Id INT PRIMARY KEY AUTO_INCREMENT, ProductName VARCHAR(20), Price INT)"; try (Connection conn = DriverManager.getConnection(url, username, password)){ Statement statement = conn.createStatement(); // создание таблицы statement.executeUpdate(sqlCommand); System.out.println("Database has been created!"); } } catch(Exception ex){ System.out.println("Connection failed..."); System.out.println(ex); } } }
То есть в данном случае мы выполняем команду
которая создает таблицу Products с тремя столбцами:
CREATE TABLE products (Id INT PRIMARY KEY AUTO_INCREMENT, ProductName VARCHAR(20),
Price INT)
Id - индентификатор стоки,
ProductName - строковое название товара и
Price - числовая цена товара.
При этом если необходимо выполнить сразу несколько команд, то необязательно создавать новый объект Statement:
Statement statement = conn.createStatement(); statement.executeUpdate("Команда_SQL1"); statement.executeUpdate("Команда_SQL2"); statement.executeUpdate("Команда_SQL3");
Назад Содержание Вперед