English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Эта глава предоставляет примеры того, как использовать JDBC приложения для выбора записей из таблицы. При выборе записей из таблицы, это добавляет дополнительные условия с помощью подзадачи WHERE. Перед выполнением следующих примеров, убедитесь, что у вас есть следующие условия:
Чтобы выполнить следующий пример, вы можете вставить}}Имя пользователяиПарольЗамените на фактическое имя пользователя и пароль.
Ваш MySQL или любая другая база данных, которую вы используете, уже запущена и работает.
Для создания новой базы данных с помощью JDBC приложения необходимо выполнить следующие шаги-
Импорт пакета:Требуется включить пакет, содержащий классы JDBC, необходимые для программирования базы данных. Обычно, используя import java.sql.* Достаточно.
Регистрация JDBC драйвера: Требуется инициализация драйвера, чтобы можно было открыть канал связи с базой данных.
Установить соединение:Необходимо использовать DriverManager.getConnection() Метод для создания объекта Connection, который представляет физическое соединение с сервером базы данных.
Выполнить запрос:Необходимо использовать объект типа Statement для создания и выполнения SQL-запросов, чтобы получить записи из таблицы, соответствующие заданным условиям. Этот запрос используетWHEREВыбор предложения.
Очистка окружения: Необходимо явно закрывать все ресурсы базы данных, а не зависеть от мусорного сбора JVM.
Скопируйте следующий пример и вставьте его в JDBCExample.java, скомпилируйте и запустите следующим образом-
//Шаг 1. Импорт необходимых пакетов import java.sql.*; public class JDBCExample { //Имя JDBC драйвера и URL базы данных static final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; static final String DB_URL = "jdbc:mysql://localhost/STUDENTS"; //Кредиты базы данных static final String USER = "username"; static final String PASS = "password"; public static void main(String[] args) { Connection conn = null; Statement stmt = null; try{ //Шаг 2: Регистрация JDBC драйвера Class.forName("com.mysql.jdbc.Driver"); //Шаг 3: Установить соединение System.out.println("Подключение к выбранной базе данных..."); conn = DriverManager.getConnection(DB_URL, USER, PASS); System.out.println("Успешное подключение к базе данных..."); //Шаг 4: Выполнение запроса System.out.println("Создание statements..."); stmt = conn.createStatement(); //Неограниченное извлечение записей. System.out.println("Пobieranie записей без условий..."); String sql = "SELECT id, first, last, age FROM Registration"; ResultSet rs = stmt.executeQuery(sql); while(rs.next()){ //Поиск по имени столбца int id = rs.getInt("id"); int age = rs.getInt("age"); String first = rs.getString("first"); String last = rs.getString("last"); //Отображение значений System.out.print("ID: " + id); System.out.print(", Age: " + age); System.out.print(", First: " + first); System.out.println(", Last: " + last); } //Выбор всех записей с ID равным или больше 101 System.out.println("Пobieranie записей по условию..."); sql = "SELECT id, first, last, age FROM Registration" + " WHERE id >= 101 "; rs = stmt.executeQuery(sql); while(rs.next()){ //Поиск по имени столбца int id = rs.getInt("id"); int age = rs.getInt("age"); String first = rs.getString("first"); String last = rs.getString("last"); //Отображение значений System.out.print("ID: " + id); System.out.print(", Age: " + age); System.out.print(", First: " + first); System.out.println(", Last: " + last); } rs.close(); catch(SQLException se){ //Обработка ошибок JDBC se.printStackTrace(); } //Обработка ошибки Class.forName e.printStackTrace(); }finally{ //Для закрытия ресурсов try{ if(stmt!=null) conn.close(); catch(SQLException se){ //Ничего не было сделано try{ if(conn!=null) conn.close(); catch(SQLException se){ se.printStackTrace(); } } System.out.println("До свидания!"); } //Конец JDBCExample
Теперь, давайте скомпилируем пример выше, как показано ниже:
C:\>javac JDBCExample.java C:\>
Во время выполненияJDBCExampleИ это приведет к следующим результатам-
C:\>java JDBCExample Подключение к выбранной базе данных... Успешно подключен к базе данных... Создание запроса... Получение записей без условий... ID: 100, Возраст: 30, Имя: Zara, Фамилия: Ali ID: 102, Возраст: 30, Имя: Zaid, Фамилия: Khan ID: 103, Возраст: 28, Имя: Sumit, Фамилия: Mittal Получение записей с условиями... ID: 102, Возраст: 30, Имя: Zaid, Фамилия: Khan ID: 103, Возраст: 28, Имя: Sumit, Фамилия: Mittal До свидания! C:\>