Скачать 291.48 Kb.
|
Обработка SQL исключительных ситуацийПакет java.sql обеспечивает класс SQLException , который является производным от класса java.lang.Exception. SQLException вызывается различными методами JDBC API и позволяет Вам определить причину ошибок, которые появляются, когда осуществляется взаимодействие Java-приложения с базой данных. Вы можете перехватить SQLException в Java-приложении, используя блок try-catch обработки исключительных ситуаций. Класс SQLException предоставляет следующую информацию об ошибках:
Класс SQLException содержит различные методы, которые предоставляют информацию об ошибках. Методы класса SQLException:
Вы можете использовать следующий фрагмент кода, чтобы перехватить SQLException: try { String str = "DELETE FROM authors WHERE au_id='998-72-3568'"; Statement stmt = con.createStatement(); int count = stmt.executeUpdate(str); } catch(SQLException sqlExceptionObject) { System.out.println("Display Error Code"); System.out.println("SQL Exception"+ sqlExceptionObject.getErrorCode()); } В этом фрагменте кода, если оператор DELETE во время выполнения вызывает SQLException , то эта ситуация обрабатывается, используя блок try-catch. sqlExceptionObject это объект класса SQLException и он используется активизацией метода getErrorCode().
Когда Вы выполняете запрос, чтобы извлечь данные из таблицы, используя Java-приложение, выходные данные запроса сохраняются в объекте ResultSet в табличном формате. Объект ResultSet поддерживает указатель (курсор), который дает Вам возможность перемещаться по строкам, сохраняемым в объекте ResultSet. По умолчанию, объект ResultSet поддерживает курсор, который перемещается только в прямом направлении. В результате, он перемещается от первой строки до последней строки в ResultSet. Вы не можете обновить умолчание объекта ResultSet. Курсор в объекте ResultSet object первоначально установлен перед первой строкой. Типы результирующего набора данных Вы можете создать множество типов объектов ResultSet , чтобы хранить выходные данные, возвращаемые базой данных после выполнения операторов SQL. Существуют следующие типы объектов ResultSet:
Вы можете специфицировать тип объекта ResultSet, используя метод createStatement() интерфейса Connection . Метод createStatement() принимает поля ResultSet как параметры, чтобы создать различные типы объектов ResultSet. Следующая таблица перечисляет различные поля интерфейса ResultSet, которые Вы можете использовать, чтобы создать различные типы результирующего набора данных:
Следующая таблица списков различных полей интерфейса ResultSet, которые Вы можете использовать, чтобы специфицировать различные параллельные режимы работы с результирующим набором данных:
Следующая таблица списков различных полей интерфейса ResultSet, которые Вы можете использовать, чтобы специфицировать различные состояния курсора результирующего набора данных:
Метод createStatement() это перезагружаемый метод, который имеет три прототипа. Следующие три перезагружаемые формы метода createStatement():
Методы интерфейса ResultSet Интерфейс ResultSet содержит различные методы, которые позволяют Вам перемещать курсор по результирующему набору данных. Следующая таблица перечисляет методы интерфейса ResultSet:
Вы можете создать результирующий набор данных со скроллингом, которое обеспечивает скроллинг вперед или назад по строкам результирующего набора данных. Вы можете использовать следующий фрагмент кода, чтобы создать результирующий набор данных только для чтения со скроллингом: Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); ResultSet rs=stmt.executeQuery ("SELECT * FROM authors"); Вы можете определять местоположение курсора результирующего набора данных, используя методы интерфейса ResultSet . Вы можете использовать следующий фрагмент кода, чтобы определить находится ли курсор результирующего набора данных перед первой строкой в результирующем наборе данных: if(rs.isBeforeFirst()==true) System.out.println("Result set cursor is before the first row in the result set"); В данном коде, rs это объект ResultSet , который вызывает метод isBeforeFirst(). Вы можете перемещать отдельные строки, такие как первую или последнию в результирующем наборе данных, используя методы интерфейса ResultSet. Вы можете использовать следующий фрагмент кода, чтобы переместить курсор результирующего набора данных к первой строке результирующего набора данных: if(rs.first()==true) System.out.println(rs.getString(1) + ", " + rs.getString(2)+ ", " + rs.getString(3)); В этом фрагменте кода, rs это объект the ResultSet , который вызывает метод first(). Точно также Вы можете перемещать курсор результирующего набора данных к последней строке результирующего набора данных, используя метод last(). Если Вы хотите переместить какую-либо отдельную строку в результирующий набор данных, вы можете использовать метод absolute(). Например, курсор результирующего набора данных позиционирован на первой строке, и вы хотите осуществить скроллинг четвертой строки, Вы должны ввести 4 как параметр, когда Вы вызываете метод absolute(), как показано в следующем фрагменте кода: System.out.println("Using absolute() method"); rs.absolute(4); int rowcount = rs.getRow(); System.out.println("rowNum should be 4 " + rowcount);
JDBC позволяет Вам создать обновляемый результирующий набор данных, которое позволяет Вам модифицировать строки результирующего набора данных. Следующая таблица перечисляет некоторые методы, используемые с обновляемым результирующим набором данных:
Вы можете использовать следующий фрагмент кода, чтобы модифицировать авторскую информацию, используя обновляемый результирующий набор данных: Statement stmt = con.createStatement(); stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); ResultSet rs = stmt.executeQuery("SELECT au_id, city, state FROM authors WHERE au_id='893-72-1158' "); rs.next(); rs.updateString("state", "NY"); rs.updateString("city", "Columbia"); rs.updateRow(); В этом фрагменте кода, строка, извлеченная из таблицы authors, где id автора равен 893-72-1158. В извлеченной строке, значение столбца штат изменено на NY и значение столбца город изменено на Columbia. |
Реферат клиент-сервер слушатель группы 37 2 курс заочного отделения Волохов Артур Юрьевич Применительно к системам баз данных архитектура «клиент-сервер» интересна и актуальна главным образом потому, что обеспечивает простое... | Реферативные и библиографические базы данных Библиотека Омгу предоставляет своим читателям доступ к локальным и удаленным электронным ресурсам: библиографическим, реферативным,... | ||
Тема: "Человеко-машинный интерфейс, разработка эргономичного интерфейса" РФ; поиск актов по базе данных; печать журналов регистраций, отчетов и справок (аналитических и о проделанной работе); а также система... | Программа по формированию навыков безопасного поведения на дорогах... Папка с раздаточным материалом (справочные таблицы по базам данных), лист с заданием для практических работ | ||
Адреса патентных ведомств и других бд в internet В случаях, когда нужно провести поиск зарубежных патентов, следует обращаться к национальным базам данных. В настоящее время открыты... | Гимназия №1 г. Агрыз Республики Татарстан База данных основа информационной системы Следствием этого являлось чрезвычайно низкая производительность операций ввода-вывода данных во внешнюю память. Магнитные барабаны... | ||
Гимназия №1 г. Агрыз Республики Татарстан База данных основа информационной системы Следствием этого являлось чрезвычайно низкая производительность операций ввода-вывода данных во внешнюю память. Магнитные барабаны... | Положение об электронном дневнике Электронным дневником называется комплекс программных средств, включающий базу данных и средства доступа к ней | ||
Базы данных, экспертные системы реферат «Реляционная модель данных... ... | Операционная система комплекс управляющих и обрабатывающих программ,... Выполнение по запросу программ (ввод и вывод данных, запуск и остановка других программ, выделение и освобождение дополнительной... | ||
Положение об Электронном дневнике моу сош №89 Электронным дневником называется комплекс программных средств, включающий базу данных и средства доступа к ней | Программа по формированию навыков безопасного поведения на дорогах... Датчик должен иметь последовательный периферийный интерфейс для подключения к персональному компьютеру или планшету с помощью преобразователя... | ||
Урок по информатике по теме "Системы управления базами данных. Создание... Повторить понятие “База данных”, “поле базы данных”, “запись базы данных”, “субд” | Междисциплинарный подход к формированию информационной среды по проблемам... Стран в области общественных наук началось еще в середине 1980-х годов, когда украинские потребители информации получили доступ к... | ||
Муниципальное казенное общеобразовательное учреждение Борисоглебского... Электронным дневником-журналом называется комплекс программных средств, включающий базу данных и средства доступа к ней | Подходы к разработке пп (1, 12) Должен соблюдаться принцип: каждый элемент данных вводится один раз от первоисточника. На основе всех структур данных источников... |