Spec-Zone .ru
спецификации, руководства, описания, API
|
Отметьте: MySQL и DB Java в настоящий момент не поддерживают DISTINCT
Тип данных SQL. Следовательно, никакой учебный пример JDBC не доступен, чтобы демонстрировать функции, описанные в этом разделе.
DISTINCT
тип данных ведет себя по-другому от других усовершенствованных типов данных SQL. Будучи определяемым пользователем типом, который основан на одном из уже существующих встроенных типов, у него нет никакого интерфейса как его отображения в языке программирования Java. Вместо этого стандартное отображение для a DISTINCT
тип данных является типом Java, на который отображается его базовый тип данных SQL.
Чтобы иллюстрировать, создайте a DISTINCT
тип данных и затем видит, как получить, установить, или обновить его. Предположите, что Вы всегда используете двухбуквенное сокращение для состояния и хотите создать a DISTINCT
тип данных, который будет использоваться для этих сокращений. Вы могли определить свое новое DISTINCT
тип данных со следующим SQL-оператором:
CREATE TYPE STATE AS CHAR(2);
Некоторые базы данных используют альтернативный синтаксис для того, чтобы создать a DISTINCT
тип данных, который показывают в следующей строке кода:
CREATE DISTINCT TYPE STATE AS CHAR(2);
Если один синтаксис не работает, можно попробовать другой. Альтернативно, можно проверить документацию на свой драйвер, чтобы видеть точный синтаксис, который это ожидает.
Эти операторы создают новый тип данных, STATE
, который может использоваться в качестве значения столбца или в качестве значения для атрибута SQL структурированный тип. Поскольку значение типа STATE
в действительности значение, которое является два CHAR
типы, Вы используете тот же самый метод, чтобы получить это, что Вы использовали бы, чтобы получить a CHAR
значение, то есть, getString
. Например, предполагая, что четвертый столбец ResultSet rs
значения хранилищ типа STATE
, следующая строка кода получает свое значение:
String state = rs.getString(4);
Точно так же Вы использовали бы метод setString
сохранить a STATE
значение в базе данных и методе updateString
изменить его значение.