Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Распределенные вычислительные системы..pdf
Скачиваний:
16
Добавлен:
05.02.2023
Размер:
1.74 Mб
Скачать

51

тому, вы должны связать полученные данные XML со строкой Java или символьным потоком непосредственно применяя XML операторы XMLPARSE и XMLSERIALIZE, как часть вашего SQL запроса.

XML соотносит:

Java type: None

тип Java для значений XML: java.sql.SQLXML. Тем не менее, тип java.sql.SQLXML не доступен Derby;

JDBC metadata type (java.sql.Types): None

тип метаданных для значений XML - SQLXML. Тем не менее, тип SQLXML не доступен Derby.

Чтобы принять значения XML из СУБД Derby, используя JDBC, применяйте оператор XMLSERIALIZE в SQL-запросе.

Например:

SELECT XMLSERIALIZE (xcol as CLOB) FROM myXmlTable

Чтобы принять значение XML используйте метод getXXX(), который соотносит целевой тип сериализации с типом данных CLOB. Чтобы установить значение XML в СУБД Derby, применяя JDBC, используйте оператор XMLPARSE в строке SQL-запроса.

Например:

INSERT INTO myXmlTable(xcol) VALUES XMLPARSE( DOCUMENT CAST (? AS CLOB) PRESERVE WHITESPACE)

Когда вы используете любые методы setXXX(), совместимые с типом String, то применяйте один из следующих методов: PreparedStatement.setString() или

PreparedStatement.setCharacterStream().

1.5.5 Функции

Функция CURRENT_DATE

CURRENT_DATE возвращает текущую дату; значение не изменится, ее запустить несколько раз в одном запросе:

CURRENT_DATE

52

или

CURRENT DATE

Пример:

-- find available future flights:

SELECT * FROM Flightavailability where flight_date > CURRENT_DATE;

Функция CURRENT_TIME

CURRENT_TIME возвращает текущее время; возвращаемое значение не изменится, если ее запустить более одного раза в пределах single statement.

CURRENT_TIME

или

CURRENT TIME

Примеры:

VALUES CURRENT_TIME

-- или:

VALUES CURRENT TIME

Функция CURRENT_TIMESTAMP

CURRENT_TIMESTAMP возвращает текущий timestamp; возвращаемое значение не изменися, если ее запустить более одного раза в пределах single statement.

CURRENT_TIMESTAMP

или

CURRENT TIMESTAMP

Учебное задание

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

создать произвольную таблицу данных;

организовать два SQL-запроса к созданной таблице.