Язык SQL

Менеджер драйверов JDBC


Существует много различных реализаций пакета java.sql. Каждая крупная система баз данных имеет свой пакет JDBC. Кроме этого, огромное количество пакетов промежуточного уровня осуществляют поддержку одной или нескольких систем баз данных. Мост JDBC— ODBC — свободно распространяемый пакет, позволяющий Java-nporpaMMaM подключаться к любому источнику данных ODBC, зарегистрированному на локальном компьютере. Источники данных сами могут быть подключены к серверам баз данных SQL, находящимся на удаленной машине.

Менеджер драйверов JDBC создает подключение между Java-npoipaMMoft и базой данных или сервером промежуточного уровня. Это подключение можно использовать для создания объекта Statement, предлагающего методы executeQuery, executeUpdate и execute для выполнения SQL-операторов. Любая ошибка, обнаруженная сервером базы данных при выполнении SQL-оператора, приводит к генерированию исключительной ситуации SQLException.

Результатом вызова метода executeQuery является объект ResultSet. В объекте ResultSet имеется курсор, используемый для перемещения по строкам, возвращенным в ответ на запрос. Поля множества ResultSet могут извлекаться по имени или местоположению в виде значений типа String или значений специально оговоренных типов.

Пакет JDBC-драйверов осуществляет поддержку доступа к значительному количеству метаданных базы данных. Клиентская программа JDBC может также извлекать метаданные из результатов запросов.

Пример класса SQLFilter служит для демонстрации того, как просто можно написать приложение SQL на языке Java. Аналогичная программа на другом языке, написанная с использованием встроенного SQL, будет очень сложной.

Метод executeUpdate используется для выполнения любых SQL-операторов, не возвращающих таблицу в качестве результата. При выполнении операторов включения, обновления или удаления метод executeUpdate возвращает целое число, представляющее число строк, подвергшихся воздействию оператора. Для Других SQL- операторов, включая операторы, модифицирующие схему, метод executeUpdate возвращает значение 0.

Приведенные в этой главе примеры программного кода демонстрируют некоторые методы, используемые при написании клиентских приложений баз данных на языке Java. Операторы языка SQL представлены значениями типа String, независимо от того, включаются ли они как константы или генерируются программой. Эти операторы обрабатываются методами executeQuery и executeUpdate, а результаты запросов затем обрабатываются соответствующим образом.

Комментарии закрыты