Форум программистов, компьютерный форум, киберфорум
Java: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
64 / 64 / 10
Регистрация: 19.10.2009
Сообщений: 234

Read composite type[] in java

10.01.2014, 22:48. Показов 771. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет! Имеется бд postgre sql, в ней создаю composite type с нужными мне колонками, например такой
SQL
1
2
3
4
CREATE TYPE users.__users_contacts AS (
  user_id INTEGER,
  email VARCHAR
);
, также создаю функцию которая возвращает датасет, одной колонкой которого и является мой тип users.__users_contacts, так вот вопрос как мне прочитать эту колонку в java, я так понимаю надо с getArray работать но пока не получается, вообщем интересует какой нибудь пример
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.01.2014, 22:48
Ответы с готовыми решениями:

Cannot read or write variables of this type
Вообще не могу понять, почему вот эта программа в PascalABC работает без ошибок, а в Turbo Pascal выдает error 64: cannot read or write...

Can't read or write variables of this type
program KURSOVAYA; {File kursovoy raboti Shvyrialkina I.I. 16-ZIE} uses crt; type ZAP=RECORD NAZ_FILM: string; ZANR:...

read data from db into JCombobox java
Подскажите, как можно прочитать данные из БД(SQL) в JCombobox? підкажіть як можна прочитати дані з бази даних(SQL) в JCombobox?

9
 Аватар для mutagen
2587 / 2260 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
10.01.2014, 22:55
JDBC FAQ для начинающих
0
64 / 64 / 10
Регистрация: 19.10.2009
Сообщений: 234
10.01.2014, 22:55  [ТС]
Чет не нашел
0
 Аватар для mutagen
2587 / 2260 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
10.01.2014, 23:00
да я глянул, там нету, позже добавлю

вам надо смотреть в сторону CallableStatement
а пока вот тут посмотрите http://www.mkyong.com/jdbc/jdb... r-example/
0
64 / 64 / 10
Регистрация: 19.10.2009
Сообщений: 234
10.01.2014, 23:06  [ТС]
Цитата Сообщение от mutagen Посмотреть сообщение
да я глянул, там нету, позже добавлю

вам надо смотреть в сторону CallableStatement
а пока вот тут посмотрите http://www.mkyong.com/jdbc/jdb... r-example/
Пока не могу понять как мне может помочь CallableStatement, функция возвращает мне таблицу, ОДНОЙ колонкой из которой является мой пользовательский тип, вот например
SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
CREATE OR REPLACE FUNCTION users.get_...(
)
RETURNS TABLE (
  колонка1,
  колонка2,
  колонка3,
  users users.__users_contacts
) AS
$body$
DECLARE
BEGIN   
    RETURN  query
    SELECT  колонка1,
            колонка2,
            колонка3,
            users.get_users_contacts  --тут возвращается массив users.__users_contacts
    FROM    users.моя_таблица o
END;
$body$
LANGUAGE 'plpgsql'
VOLATILE
CALLED ON NULL INPUT
SECURITY INVOKER
COST 100 ROWS 1000;
0
 Аватар для mutagen
2587 / 2260 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
11.01.2014, 00:17
нет никакой разницы что у вас возврат выполняется процедурой users.get_users_contacts, в результирующем sql респонзе будет простой plain ответ состоящий из INTEGER и VARCHAR на месте get_users_contacts, поэтому рассматривайте свой сложный тип как отдельные поля в респонзе и всё

Добавлено через 1 минуту
Цитата Сообщение от Larsus Посмотреть сообщение
ОДНОЙ колонкой
покажите мне вывод этой "одной" колонки
0
64 / 64 / 10
Регистрация: 19.10.2009
Сообщений: 234
11.01.2014, 00:29  [ТС]
Цитата Сообщение от mutagen Посмотреть сообщение
нет никакой разницы что у вас возврат выполняется процедурой users.get_users_contacts, в результирующем sql респонзе будет простой plain ответ состоящий из INTEGER и VARCHAR на месте get_users_contacts, поэтому рассматривайте свой сложный тип как отдельные поля в респонзе и всё

Добавлено через 1 минуту

покажите мне вывод этой "одной" колонки
Т.е Вы хотите сказать что функция представленная мною выше как "users.get_..." вернет мне не 4 колонки как я это описал
SQL
1
2
3
4
5
6
RETURNS TABLE (
  колонка1,
  колонка2,
  колонка3,
  users users.__users_contacts
)
а 5? так как колонку users она развернет в две, раз тип описан двумя колонками?
0
 Аватар для mutagen
2587 / 2260 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
11.01.2014, 00:31
Цитата Сообщение от Larsus Посмотреть сообщение
а 5?
именно так )

ps: что мешает проверить это прямо сейчас простеньким вызовом своей процедуры?
0
64 / 64 / 10
Регистрация: 19.10.2009
Сообщений: 234
11.01.2014, 01:08  [ТС]
Цитата Сообщение от mutagen Посмотреть сообщение
именно так )

ps: что мешает проверить это прямо сейчас простеньким вызовом своей процедуры?
Простенький вызов моей процедуры говорит о том что Вы не правы, да и быть такого не может я согласен если я вызову функцию users.get_users_contacts она вернет мне колонки этого типа, но когда в основной функции чтоб пользовательский тип развернулся в его колонки это уже что то как то...

Добавлено через 2 минуты
Да и тем более как вы себе представляете такое, если функция users.get_users_contacts вернет массив что получается как будет выглядеть таблица записи раздвоиться по вашему должны или как
0
 Аватар для mutagen
2587 / 2260 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
11.01.2014, 02:47
Цитата Сообщение от Larsus Посмотреть сообщение
Да и тем более как вы себе представляете такое, если функция users.get_users_contacts вернет массив что получается как будет выглядеть таблица записи раздвоиться по вашему должны или как
послушайте что вы от меня хотите, чтобы я рассказал вам как постгрик оттранспонирует ваш масив в жсоноподобную строку и что вам потом с ним делать?
позаботьтесь о совпадении количества возвращаемых строк в запросе и процедуре сами
или пишите парсер стринг отображений своих тюплов, почему вы решили что в JDBC есть волшебная магия, которая поможет вам решить проблему причуд постгрика не относящиеся к SQL, может вам заодно и оракловую PL/SQL магию обрабатывать и многие другие особенности других БД
такой функциональности не имеют даже высокоуровневые ORM-ы
к тому же я вижу что вы явно лучше меня разбираетесь в вопросе явы и sql, зачем засорять форум
просто напишите свой волшебный сервлет и будьте довольны
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.01.2014, 02:47
Помогаю со студенческими работами здесь

Ошибка: "Cannot read or write variables of this type"
В чем ошибка.Подправте код пожалуйста. program zem; uses crt; var a: array of integer; b: array of integer; s: array of...

the type is already defined java
import java.util.ArrayList; public class Payment { public static void main(String args) { Administrator admin = new...

Java.io.StreamCorruptedException: invalid type code: AC
Моя задача - написать игру PONG и сделать ее онлайновой. Через некоторое время работы клиента появляется исключение...

Java wildcards эквивалент в generic type
В java есть такая штука, как wildcards, которая является расширением generic types. Пример с использованием <?> public...

Java.lang.VerifyError: Bad type on operand stack
Имеется jre 8.0.152, если это важно, стабильно возвращающий ошибку из названия темы. Ниже приведен максимально урезанный код, на котором...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru