Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
задание.rtf
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
6.99 Mб
Скачать
      1. Удаление данных из таблицы

Синтаксис оператора DELETE:

DELETE [LOW_PRIORITY | QUICK] FROM table_name

[WHERE where_definition]

[ORDER BY ...]

[LIMIT rows]

Пример:

Если указано ключевое слово LOW_PRIORITY, выполнение данной команды DELETE будет задержано до тех пор, пока другие клиенты не завершат чтение этой таблицы.

Если задан параметр QUICK, то обработчик таблицы при выполнении удаления не будет объединять индексы, в некоторых случаях это может ускорить данную операцию.

Если применяется выражение ORDER BY, то строки будут удалены в указанном порядке. В действительности это выражение полезно только в сочетании с LIMIT.

Специфическая для MySQL опция LIMIT для команды DELETE указывает серверу максимальное количество строк, которые следует удалить до возврата управления клиенту.

  1. Работа с базами данных в среде разработки Eclipse

Для работы с базой данных в среде Eclipse потребуется установить драйвер JDBC, который можно скачать бесплатно по ссылке:

http://dev.mysql.com/downloads/connector/j/

или

http://cdn.mysql.com/Downloads/Connector-J/mysql-connector-java-5.1.22.zip

Из архива mysql-connector-java-5.1.22.zip необходимо извлечь файл mysql-connector-java-5.1.22-bin.jar и поместить его в папку:

#JAVA_HOME\jre*\lib\ext

    1. Клиентское приложение Java для работы с MySql

Рассмотрим простой пример работы с СУБД. Консольное приложение печатает все фамилии из таблицы zoo базы данных my.

Необходимо подключить нужные пакеты:

import java.sql.*;

import java.io.*;

В функции main() определим переменную типа Connection. Объект Connection нужен для создания соединения с базой данных.

Connection connection = null;

Дальнейший код помещен в блок try, поскольку некоторые из используемых методов могут вызывать исключения.

Создаем соединение с базой данных. Обратите внимание, мы не создаем объект с помощью операции new. Метод getConnection() сам создает объект и возвращает ссылку на него.

connection = DriverManager.getConnection(url, username, password);

Параметры метода getConnection():

  • Адрес url, который состоит из:

  • имя протокола подключения - "jdbc:mysql://";

  • имя хоста ("localhost"если клиент располагается там же где и сервер);

  • имя базы данных.

  • Логин для подключения к базе данных.

  • Пароль для подключения к базе данных.

После успешного подключения создаем объект Statement, который будет использоваться для выполнения запросов к базе данных (здесь тоже не используем new):

Statement stmt = connection.createStatement();

Объявляем переменную ResultSet для получения результата запроса и выполняем запрос:

ResultSet rs = stmt.executeQuery(query);

где значение query – это строка с текстом запроса:

String query = "SELECT * FROM zoo";

Заметим, что для выполнения различных запросов, связанных с изменением данных (INSERT, UPDATE, DELETE и т.п.), следует применять метод executeUpdate(), например:

stmt.executeUpdate("DELETE FROM zoo");

Затем в цикле последовательно перебираем и печатаем строки результата:

while(rs.next())

{

dbRecord = rs.getString("name");

System.out.println(dbRecord);

}

Перед выходом из программы закрываем объекты ResultSet и Connection.

rs.close(); rs = null;

connection.close(); connection = null;

Далее показана обработка исключений:

catch (SQLException ex)

{

System.out.println("SQLException caught");

System.out.println("---");

while ( ex != null ){

System.out.println("Message : " + ex.getMessage());

System.out.println("SQLState : " + ex.getSQLState());

System.out.println("ErrCode : " + ex.getErrorCode());

System.out.println("---");

ex = ex.getNextException();

}

}

catch (Exception ex)

{

System.out.println("Other Error in main()");

}