Интерфейс доступа к базам данных





Скачать 291.48 Kb.
НазваниеИнтерфейс доступа к базам данных
страница2/4
Дата публикации24.08.2014
Размер291.48 Kb.
ТипДокументы
100-bal.ru > Информатика > Документы
1   2   3   4

Использование JDBC API


Вы должны использовать драйверы баз данных и JDBC API при разработке Java-приложения, чтобы получить или сохранить данные в базе данных. Классы JDBC API и интерфейсы доступны в пакетах java.sql и javax.sql. Классы и интерфейсы выполняют множество задач, таких как установить и закрыть связь с базой данных, послать запрос к базе данных, извлечь данные из базы данных и обновить данные базы данных. Обычно используются следующие классы и интерфейсы в JDBC API:

  • Класс DriverManager: загружает драйвер для базы данных.

  • Интерфейс Driver -: представляет драйвер базы данных. Все JDBC классы драйверов должны реализовать Driver -интерфейс.

  • Интерфейс Connection: позволяет установить связь между Java-приложением и базой данных.

  • Интерфейс Statement: позволяет выполнить SQL-операторы.

  • Интерфейс ResultSet-: представляет информацию, извлеченную из базы данных.

  • Класс SQLException: обеспечивает информацией об исключительных ситуациях, которые происходят при взаимодействии с базами данных.

Чтобы выполнять запросы базе данных и отображать результат, используя Java-приложения, Вам необходимо:

  • Загрузить драйвер

  • Установить соединение с базой данных

  • Создать и выполнить JDBC-операторы

  • Обработать исключительные ситуации SQL

Загрузка драйвера


Первым шагом разработки JDBC-приложения является загрузка и регистрация требуемого драйвера, используя менеджер драйверов. Вы можете загрузить и зарегистрировать драйвер:

  • программно:

  • используя метод forName()

  • используя метод registerDriver()

  • вручную:

  • устанавливая системные свойства

Использование метода forName()


Метод forName()доступен в классе java.lang.Class. Метод forName() загружает JDBC-драйвер и регистрирует драйвер, посредством менеджера драйверов. Синтаксис загрузки JDBC-драйвера для доступа к базе данных следующий:

Class.forName("");

Вы можете загрузить Мост JDBC-ODBC драйвер, используя следующий метод вызова:

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Использование метода registerDriver()


Вы можете создать экземпляр класса Driver, чтобы загрузить JDBC-драйвер. Синтаксис описания экземпляра класса Driver следующий:

Driver d=new ;

Вы можете использовать следующие утверждение, чтобы создать экземпляр класса Driver:

Driver d = new sun.jdbc.odbc.JdbcOdbcDriver();

Как только Вы создали объект класса Driver object, вызовите метод registerDriver(), чтобы зарегистрировать посредством менеджера драйверов. Вы можете зарегистрировать Мост JDBC-ODBC драйвер, используя следующий вызов метода registerDriver():

DriverManager.registerDriver(d);

Установка системных свойств


Драйвер может быть также загружен путем установки системных свойств для JDBC-драйверов. Вы добавляете имя драйвера к jdbc.drivers системных свойств, чтобы загрузить JDBC-драйвер. Вы используете командную опцию –D, чтобы установить системное свойство в командной строке. Команда установки системных свойств:

java –Djdbc.drivers=sun.jdbc.odbc.JdbcOdbcDriver SampleApplication

В этой команде jdbc.drivers это имя свойства, а sun.jdbc.odbc.JdbcOdbcDriver это значение, которое Вы должны установить для свойства.

После того, как Вы загрузили драйвер, вы должны установить связь с базой данных.

Связь с базой данных


Вы создаете объект интерфейса Connection , чтобы установить связь Java-приложения с базой данных. Вы можете создать несколько объектов Connection в Java-приложении для доступа и извлечения данных из нескольких баз данных. Класс DriverManager предоставляет метод getConnection(), чтобы создать объект Connection . Метод getConnection()это перезагружаемый метод, который имеет следующие три формы:

  • Связь getConnection (String ):принимает JDBC URL базы данных, к которой Вам нужно получить доступ, как параметр. Вы можете использовать следующий фрагмент кода, чтобы связаться с базой данных, используя метод getConnection() с единственным параметром:

String url = "jdbc:odbc:MyDataSource";

Connection con = DriverManager.getConnection(url);

Синтаксис для JDBC URL, который проходит как параметр метода getConnection():


::

JDBC URL имеет следующие три компонента:

  • имя протокола: указывает имя протокола, который используется для доступа к базе данных. Для JDBC, имя протокола доступа всегда jdbc.

  • имя подпротокола: указывает механизм извлечения данных из базы данных. Например, если Вы используете Мост JDBC-ODBC драйвер для доступа к базе данных, то имя подпротокола - odbc.

  • уточняющее имя: указывает имя источника данных(Data Source Name) (DSN), которое содержит информацию о базе данных, такую как имя базы данных, местоположение сервера базы данных, имя пользователя и пароль доступа к серверу баз данных.

  • связь getConnection (String , String , String
    ): принимает JDBC url базы данных. Также принимается имя пользователя и пароль авторизации пользователя базы данных. Вы можете использовать следующий фрагмент кода, чтобы специфицировать имя пользователя и информацию о пароле, чтобы соединиться с базой данных:

String url = "jdbc:odbc:MyDataSource";

Connection con = DriverManager.getConnection (url,"NewUser","NewPassword");

  • связь getConnection (String ,Properties
    ): принимает JDBC URL базы данных и объект java.util.Properties как параметр. Вы можете специфицировать информацию, такую как имя пользователя и пароль в свойствах объекта, используя метод setProperty(). Вы можете использовать следующий фрагмент кода, чтобы специфицировать свойства для установления связи с базой данных:

String url = "jdbc:odbc:MyDataSource";

Properties p = new Properties();

p.setProperty("user","NewUser");

p.setProperty("password","NewPassword");

Connection con = DriverManager.getConnection(url,p);

В этом фрагменте кода, р это ссылка на объект класса Properties(Свойства) . Имя пользователя и свойства пароля устанавливаются, используя метод setProperty().

После того как Вы создаете связь, Вам нужно написать операторы JDBC, которые должны быть выполнены.

Создание и выполнение утверждений

JDBC

Вам нужно создать объект Statement , чтобы послать запросы и извлечь результаты из базы данных. Объект Connection поддерживает метод createStatement(), чтобы создать объект Statement . Вы можете использовать следующий фрагмент кода, чтобы создать объект Statement:

Connection con = DriverManager.getConnection ("jdbc:odbc:MyDataSource","NewUser","NewPassword");

Statement stmt = con.createStatement();

Вы можете использовать статические SQL –операторы, чтобы послать запросы к базе данных. SQL-операторы, которые не содержат параметры времени выполнения, называются статическими SQL- операторами. Вы можете посылать SQL –операторы к базе данных, используя объект Statement . Интерфейс Statement содержит следующие методы, чтобы послать статические SQL-операторы базе данных:

  • ResultSet executeQuery(String str): выполняет SQL-оператор и возвращает единственный объект типа ResultSet. Этот объект предоставляет Вам методы доступа к базе данных из объекта result set. Метод executeQuery() должен использоваться, когда Вам нужно извлечь данные из таблицы базы данных, используя, оператор SELECT. Синтаксис использования метода executeQuery() следующий:

Statement stmt = con.createStatement();

ResultSet rs = stmt.executeQuery();

где stmt это ссылка на объект интерфейса Statement . Метод executeQuery() выполняет SQL –оператор и результат, извлеченный из базы данных, сохраняется в поле rs объекта ResultSet.

  • int executeUpdate(String str): выполняет SQL-оператор и возвращает номер строки данных, который был назначен после обработки SQL-оператора. Когда Вам нужно модифицировать данные в таблице базы данных, используя операторы языка манипулирования данными ( Data Manipulation Language)(DML), INSERT, DELETE и UPDATE, Вы можете использовать метод executeUpdate(). Синтаксис использования метода executeUpdate() следующий:

Statement stmt = con.createStatement();

int count = stmt.executeUpdate();

Здесь метод executeUpdate() выполняет SQL-оператор и номер назначенной строки базы данных сохраняется в count, переменной целого типа.

  • boolean execute(String str): выполняет SQL-оператор и возвращает булевское значение. Вы можете использовать этот метод, когда тип SQL-оператора, поступающего как параметр, не известен или, когда выполненный оператор возвращает результирующий набор данных или обновленный счетчик. Метод execute() возвращает значение истина, если результат SQL-оператора это объект типа ResultSet и ложь, если это обновленный счетчик. Синтаксис метода execute():

Statement stmt = con.createStatement();

stmt.execute();

Вы можете использовать DML –операторы INSERT, UPDATE и DELETE в Java-приложениях, чтобы модифицировать, хранимые в таблицах базы данных. Вы можете также использовать операторы языка определения данных (Data Definition Language)(DDL) CREATE, ALTER и DROP в Java-приложениях, чтобы определить или изменить структуру объектов базы данных. Следующие различные операции, которые вы можете выполнять, используя Java-приложение:

  • Табличные запросы

  • Вставка строк в таблицу

  • Обновление строк в таблице

  • Удаление строк из таблицы

  • Создание таблицы

  • Изменение и удаление в таблице

Табличные запросы

Вы можете извлечь данные из таблицы, используя, оператор SELECT. Оператор SELECT выполняется, используя метод executeQuery() и возвращает выходные данные в форме объекта ResultSet. Вы можете использовать следующий фрагмент кода, чтобы извлечь данные из таблицы authors:

String str = "SELECT * FROM authors";

Statement stmt = con.createStatement();

ResultSet rs = stmt.executeQuery(str);

В этом фрагменте кода str содержит оператор SELECT, который извлекает данные из таблицы authors. Результат сохраняется в rs объекта ResultSet.

Когда Вам нужно извлечь строки из таблицы, условия отбора строк специфицируется в пункте WHERE оператора SELECT. Вы можете использовать следующий фрагмент кода, чтобы извлечь выделенную строку из таблицы authors:

String str = "SELECT * FROM authors WHERE city=’Oakland’";

Statement stmt = con.createStatement();

ResultSet rs = stmt.executeQuery(str);

В этом фрагменте кода метод executeQuery() извлекает детали из таблицы authors, касающиеся города.

Вставка строк в таблицу

Вы можете добавить строки в существующую таблицу, используя, оператор INSERT. Метод executeUpdate() дает Вам возможность добавить строки в таблицу. Вы можете использовать следующий фрагмент кода, чтобы вставить строку в таблицу authors:

String str = " INSERT INTO authors (au_id, au_lname, au_fname, address, city, state, contract) VALUES ('998-72-3568', 'Ringer','Albert','801 826-0752 67 Seventh Av.', 'Salt Lake City','UT','1')";

Statement stmt = con.createStatement();

int count = stmt.executeUpdate(str);

В этом фрагменте кода, str содержит оператор INSERT , который Вам нужно послать к базе данных. Объект интерфейса Statement , stmt, выполняет оператор INSERT , используя метод executeUpdate() и возвращает номер строки, вставленной в таблицу, переменной count.

Обновление строк в таблице

Вы можете модифицировать существующую информацию в таблице, используя, оператор UPDATE. Вы можете использовать следующий фрагмент кода, чтобы модифицировать строку в таблице authors:

String str = "UPDATE authors SET address='10932 Second Av.' WHERE au_id='998-72-3568'";

Statement stmt = con.createStatement();

int count = stmt.executeUpdate(str);

В этом фрагменте кода, str содержит оператор UPDATE, который Вам нужно послать к базе данных. Объект Statement выполняет этот оператор, используя метод executeUpdate() и возвращает номер строки, модифицированной в таблице, переменной count.

Удаление строки из таблицы

Вы можете удалить существующую информацию из таблицы, используя, оператор DELETE. Вы можете использовать следующий фрагмент кода, чтобы удалить строку из таблицы authors:

String str = "DELETE FROM authors WHERE au_id='998-72-3568'";

Statement stmt = con.createStatement();

int count = stmt.executeUpdate(str);

В этом фрагменте кода, str содержит оператор DELETE , который Вам нужно послать к базе данных. Объект Statement выполняет этот оператор, используя метод executeUpdate() и возвращает номер строки, удаленной из таблицы, переменной count.

Создание таблицы

Вы используете оператор CREATE TABLE, чтобы создать и определить структуру таблицы базы данных. Вы можете использовать следующий фрагмент кода в Java-приложении, чтобы создать таблицу:

String str="CREATE TABLE MyProduct"

+" (p_id INTEGER,"

+"p_name VARCHAR(25),"

+"rate FLOAT,"

+"unit_msr CHAR(6))";

Statement stmt=con.createStatement();

stmt.execute(str);

В этом фрагменте кода, String str содержит оператор CREATE TABLE, чтобы создать таблицу MyProduct. Метод execute() используется в процессе выполнения оператора CREATE TABLE.

Изменение и удаление в таблице

DDL предоставляет оператор ALTER, чтобы модифицировать определение объекта базы данных. Вы используете оператор ALTER TABLE , чтобы модифицировать структуру таблицы. Например, Вы используете этот оператор, чтобы добавить новый столбец в таблицу, изменить тип данных и ширину существующего столбца, а также добавить ограничение в столбец. Вы можете использовать следующий фрагмент кода, чтобы использовать оператор ALTER TABLE в Java-приложении, чтобы добавить столбец в таблицу MyProduct:

String str="ALTER TABLE MyProduct "

+"ADD quantity INTEGER";

Statement stmt=con.createStatement();

stmt.execute(str);

DDL предоставляет оператор DROP, чтобы удалить объект из базы данных. Вы используете оператор DROP TABLE, чтобы удалить таблицу из базы данных. Вы можете использовать следующий фрагмент кода, чтобы удалить таблицу MyProduct, используя Java-приложение:

String str="DROP TABLE MyProduct";

Statement stmt=con.createStatement();

stmt.execute(str);

Когда Вы создаете JDBC-приложения Вам нужно обрабатывать исключительные ситуации. Выполняющиеся методы переходят в состояние SQLException , когда появляется ошибка времени выполнения SQL-операторов.
1   2   3   4

Похожие:

Интерфейс доступа к базам данных iconРеферат клиент-сервер слушатель группы 37 2 курс заочного отделения Волохов Артур Юрьевич
Применительно к системам баз данных архитектура «клиент-сервер» интересна и актуальна главным образом потому, что обеспечивает простое...
Интерфейс доступа к базам данных iconРеферативные и библиографические базы данных
Библиотека Омгу предоставляет своим читателям доступ к локальным и удаленным электронным ресурсам: библиографическим, реферативным,...
Интерфейс доступа к базам данных iconТема: "Человеко-машинный интерфейс, разработка эргономичного интерфейса"
РФ; поиск актов по базе данных; печать журналов регистраций, отчетов и справок (аналитических и о проделанной работе); а также система...
Интерфейс доступа к базам данных iconПрограмма по формированию навыков безопасного поведения на дорогах...
Папка с раздаточным материалом (справочные таблицы по базам данных), лист с заданием для практических работ
Интерфейс доступа к базам данных iconАдреса патентных ведомств и других бд в internet
В случаях, когда нужно провести поиск зарубежных патентов, следует обращаться к национальным базам данных. В настоящее время открыты...
Интерфейс доступа к базам данных iconГимназия №1 г. Агрыз Республики Татарстан База данных основа информационной системы
Следствием этого являлось чрезвычайно низкая производительность операций ввода-вывода данных во внешнюю память. Магнитные барабаны...
Интерфейс доступа к базам данных iconГимназия №1 г. Агрыз Республики Татарстан База данных основа информационной системы
Следствием этого являлось чрезвычайно низкая производительность операций ввода-вывода данных во внешнюю память. Магнитные барабаны...
Интерфейс доступа к базам данных iconПоложение об электронном дневнике
Электронным дневником называется комплекс программных средств, включающий базу данных и средства доступа к ней
Интерфейс доступа к базам данных iconБазы данных, экспертные системы реферат «Реляционная модель данных...
...
Интерфейс доступа к базам данных iconОперационная система комплекс управляющих и обрабатывающих программ,...
Выполнение по запросу программ (ввод и вывод данных, запуск и остановка других программ, выделение и освобождение дополнительной...
Интерфейс доступа к базам данных iconПоложение об Электронном дневнике моу сош №89
Электронным дневником называется комплекс программных средств, включающий базу данных и средства доступа к ней
Интерфейс доступа к базам данных iconПрограмма по формированию навыков безопасного поведения на дорогах...
Датчик должен иметь последовательный периферийный интерфейс для подключения к персональному компьютеру или планшету с помощью преобразователя...
Интерфейс доступа к базам данных iconУрок по информатике по теме "Системы управления базами данных. Создание...
Повторить понятие “База данных”, “поле базы данных”, “запись базы данных”, “субд”
Интерфейс доступа к базам данных iconМеждисциплинарный подход к формированию информационной среды по проблемам...
Стран в области общественных наук началось еще в середине 1980-х годов, когда украинские потребители информации получили доступ к...
Интерфейс доступа к базам данных iconМуниципальное казенное общеобразовательное учреждение Борисоглебского...
Электронным дневником-журналом называется комплекс программных средств, включающий базу данных и средства доступа к ней
Интерфейс доступа к базам данных iconПодходы к разработке пп (1, 12)
Должен соблюдаться принцип: каждый элемент данных вводится один раз от первоисточника. На основе всех структур данных источников...


Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск