powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / postgres - результат нескольких выборок.
12 сообщений из 12, страница 1 из 1
postgres - результат нескольких выборок.
    #39120899
borobos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В MSSQL можно сделать процедуру и вывести несколько результатов выборок типа:
Код: sql
1.
2.
3.
4.
CREATE PROCEDURE Proc
AS
SELECT * FROM Tab1
SELECT * FROM Tab2



В итоге получим два набора данных, при работе с которыми в C# напр. получить их можно как DataSet.

Можно ли что-то подобное сделать в postgres? Интересует получить на выходе DataSet с которым можно будет работать как с хранилищем выборок.
...
Рейтинг: 0 / 0
postgres - результат нескольких выборок.
    #39120905
big-trot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
UNION
...
Рейтинг: 0 / 0
postgres - результат нескольких выборок.
    #39120909
borobos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
big-trot,

забыл дописать, набор полей и типы полей в обеих выборках разные. Если поправить то:
Код: plsql
1.
2.
3.
4.
CREATE PROCEDURE Proc
AS
SELECT col1, col2 FROM Tab1
SELECT col3, col4, col5 FROM Tab2
...
Рейтинг: 0 / 0
postgres - результат нескольких выборок.
    #39120919
p2.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
select 't1' сет, t1 дата from (values(123, 'abc')) t1 
union all
select 't2', t2 from (values(date '2015-01-01', 1.5)) t2;

 сет |       дата
-----+------------------
 t1  | (123,abc)
 t2  | (2015-01-01,1.5)
(2 rows)


borobosВ MSSQL можно сделать процедуру и вывести несколько результатов выборокОсобенно провокационно это выглядело в доMARSовую эру.
...
Рейтинг: 0 / 0
postgres - результат нескольких выборок.
    #39120946
borobos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
p2.,

спасибо.
В вашем примере получается в итоге один общий набор, который на клиенте в DataSet будет выглядеть как одна таблица (если не ошибаюсь).
В оригинальной версии на mssql в результате было два разных набора на выходе, и в DataSet было две сущности со своим набором полей.
...
Рейтинг: 0 / 0
postgres - результат нескольких выборок.
    #39120953
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
borobos,

refcursor-ы же + неприятное последствие -- клиентский коммит.

или json + уметь парсить его клиентом.
...
Рейтинг: 0 / 0
postgres - результат нескольких выборок.
    #39120981
borobos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
qwwq,

спасибо.

авторнеприятное последствие -- клиентский коммит.
это точно.
...
Рейтинг: 0 / 0
postgres - результат нескольких выборок.
    #39122334
Hawkmoon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
borobos,

Вообще гря, это фича ado.net, которая реализована нахаляву в mssql.

немного попыхтеть вокруг npgsql - и получите радость в виде datatable[0] datatable[1] в датасете.
...
Рейтинг: 0 / 0
postgres - результат нескольких выборок.
    #39122383
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hawkmoonborobos,

Вообще гря, это фича ado.net, которая реализована нахаляву в mssql.

<>
-- это точно ?

вообще говоря, я <<если это не аберрация памяти>> брал ODBC-ём батч вида

Код: sql
1.
2.
3.
SELECT * FROM t1;
SELECT * FROM t2;
SELECT * FROM t3;


из постгреса
и разбирал его ещё DAO.NextRecordset--ом.
тако же как и ADO.NextRecordset .

в пж нет типа возврата "SET of SETOF smthng" [SET OF TABLEs]. Но открыть в транзе пяток--другой курсоров (а если транза -- sql -- даже with hold) -- вы всегда можете.
...
Рейтинг: 0 / 0
postgres - результат нескольких выборок.
    #39122591
Hawkmoon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qwwq,

гуглим
difference between ado.net dataset and ado recordset,
например
http://www.dotnetfunda.com/interviews/show/5286/what-is-the-difference-between-an-adonet-dataset-and-an-ado-recordset

Или читаем Анатолия Постолита "Visual Studio .NET: разработка приложений баз данных"

где это хорошо разжевано.
...
Рейтинг: 0 / 0
postgres - результат нескольких выборок.
    #39122604
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hawkmoon,

чото я не понял, Ъ

odbc позволяет перебрать возвраты батча nextrecordset--ами ?
да или нет ?
...
Рейтинг: 0 / 0
postgres - результат нескольких выборок.
    #39122760
Hawkmoon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Я не лазил внутрь odbc
2. У автора в сообщении DataSet, а не Recordset
3. разницу - см. по ссылкам/книгам. Там целая глава у Постолита написана, где все подробно разжевано.
odbc и ado тут не при чем. В M$ сказали "Это прошлый век" уже в 2005 году (ADO.NET v. 1.0)
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / postgres - результат нескольких выборок.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]