powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Курсор (передача)
25 сообщений из 34, страница 1 из 2
Курсор (передача)
    #39254092
Asew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Возник вопрос по открытию курсора:

Имеется батник через который происходит подключение к базе на сервере и выполнением select-а в отдельном файле (.txt). Результатом select-а является курсор, который должен в открытом виде выводиться в .xml файл. При попытке Fetch-а курсора

Begin;
select my_function();
fetch all in "<Unnamed portal 1>"

ничего не происходит. В .xml файле сохраняется запись вида Unnamed portal 1 (например).

Как возможно устранить данную проблему?
...
Рейтинг: 0 / 0
Курсор (передача)
    #39254111
Фотография vyegorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Asew,

Батник -- это shell-скрипт, да?
Насколько я знаю, скрипты не умеют работать с курсорами, тут нужен полноценный драйвер.

Почему нельзя просто перенаправить вывод в файл?
...
Рейтинг: 0 / 0
Курсор (передача)
    #39254126
Asew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vyegorov,
в батнике как раз и и идет указание пути на файл (.txt) + в батнике исходные данные лежат (передаются в файл .txt, где select) и уже с файла результат записывается в .xml
...
Рейтинг: 0 / 0
Курсор (передача)
    #39254163
Фотография vyegorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Asewв батнике как раз и и идет указание пути на файл (.txt) + в батнике исходные данные лежат (передаются в файл .txt, где select) и уже с файла результат записывается в .xml
Я не понимаю что вы хотите тут сказать.
...
Рейтинг: 0 / 0
Курсор (передача)
    #39254175
Asew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vyegorov,
добился вывода на экран курсора (записи). Каким образом можно убрать шапку?

у меня получилось что-то типо такого ( в файле):

Begin
my_function()

INDENT
--------------------------------------------------------------------------------

мои записи
...
Рейтинг: 0 / 0
Курсор (передача)
    #39254208
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Asewvyegorov,
добился вывода на экран курсора (записи). Каким образом можно убрать шапку?

у меня получилось что-то типо такого ( в файле):

Begin
my_function()

INDENT
--------------------------------------------------------------------------------

мои записи

ключ psql
-t, --tuples-only print rows only

--
Maxim Boguk
www.postgresql-consulting.ru
...
Рейтинг: 0 / 0
Курсор (передача)
    #39254217
Asew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Maxim Boguk,
Спасибо добавил в конце в итоге получилось:

Begin
my_function()

мои записи


как убрать begin и my_function() ?
...
Рейтинг: 0 / 0
Курсор (передача)
    #39254228
Фотография vyegorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Asew,

Код: sql
1.
2.
3.
psql -qAtX <<EOSQL > output.raw
SELECT * FROM my_data;
EOSQL
...
Рейтинг: 0 / 0
Курсор (передача)
    #39254242
Asew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vyegorov, разве будет работать в Postgres ? по-моему только для Sql этот вариант пройдет. Куда добавить данные строки? в батник?
...
Рейтинг: 0 / 0
Курсор (передача)
    #39254245
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AsewMaxim Boguk,
Спасибо добавил в конце в итоге получилось:

Begin
my_function()

мои записи


как убрать begin и my_function() ?

телепатов нет
приведите весь ваш скрипт.


--
Maxim Boguk
www.postgresql-consulting.ru
...
Рейтинг: 0 / 0
Курсор (передача)
    #39254296
Asew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Maxim Boguk,
добился что в xml файле записывается:

unnamed portal 1

мои записи


все остальное убрано)

разобраться бы как убрать unnamed portal 1 и было бы отлично!
...
Рейтинг: 0 / 0
Курсор (передача)
    #39254318
Фотография vyegorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Asew,

Код: sql
1.
sed -e '/unnamed portal 1/d' file

?
...
Рейтинг: 0 / 0
Курсор (передача)
    #39254322
Asew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vyegorov,ничего не происходит от этого .....(
...
Рейтинг: 0 / 0
Курсор (передача)
    #39255520
Asew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Asew,

у кого-то есть какие-то идеи по удалению ссылки на создаваемый unnamed portal c результирующего записи
...
Рейтинг: 0 / 0
Курсор (передача)
    #39256188
Asew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
up теме... Решение так и не было найдено на данный момент(((
...
Рейтинг: 0 / 0
Курсор (передача)
    #39258531
Asew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Итак есть какие-то мысли по поводу создаваемой ссылки

Я пишу в файле .txt :

begin;
select myfunction();
fetch all in <unnamed portal >;
commit;

На выходе получаю файл:

<unnamed portal>

<record><ID>1</ID><Name>A</Name><RFC>RFC 1035[1]</RFC><Text>Address record</Text>
.................

Мне хотелось бы увидеть вот такое :

<?xml version="1.0" encoding="UTF-8"?>
<Message>
<record><ID>1</ID><Name>A</Name><RFC>RFC 1035[1]</RFC><Text>Address record</Text>
..................
</Message>
...
Рейтинг: 0 / 0
Курсор (передача)
    #39260947
Asew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Maxim Boguk,
Есть мысли как удалить или скрыть ссылку на создаваемый курсор?
...
Рейтинг: 0 / 0
Курсор (передача)
    #39261027
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AsewMaxim Boguk,
Есть мысли как удалить или скрыть ссылку на создаваемый курсор?

Вы так и не привели ваш код (не sql а скрипты)
у вас проблема не с sql/базой а с использованием command line утилит и знанием их ключей.
...
Рейтинг: 0 / 0
Курсор (передача)
    #39261058
Asew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Maxim Boguk,
вот подключение к базе и команды самого psql

"C:\Program Files\PostgreSQL\9.4\bin\psql.exe" -h IP_MY_BASE -d foo -U postgres -f "C:\X\my.sql" -v vdate="to_timestamp(' my_date','dd.mm.yyyy')" -v vuser="" -o my_XML.xml -A -q -t
pause

Какие еще команды psql надо включить чтобы не отображать ссылку на портал?)
...
Рейтинг: 0 / 0
Курсор (передача)
    #39261113
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AsewMaxim Boguk,
вот подключение к базе и команды самого psql

"C:\Program Files\PostgreSQL\9.4\bin\psql.exe" -h IP_MY_BASE -d foo -U postgres -f "C:\X\my.sql" -v vdate="to_timestamp(' my_date','dd.mm.yyyy')" -v vuser="" -o my_XML.xml -A -q -t
pause

Какие еще команды psql надо включить чтобы не отображать ссылку на портал?)

а что отдает просто psql shell при вызове
select my_function();
?

--
Maxim Boguk
www.postgresql-consulting.ru
...
Рейтинг: 0 / 0
Курсор (передача)
    #39261118
Asew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Maxim Boguk,
<unnamed portal 1>
...
Рейтинг: 0 / 0
Курсор (передача)
    #39261124
Asew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Asew,

select my_function(vdate);

Результат: <unnamed portal 1>
...
Рейтинг: 0 / 0
Курсор (передача)
    #39261139
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AsewAsew,

select my_function(vdate);

Результат: <unnamed portal 1>

А как у вас ваша функция определена?
(заголовок)

--
Maxim Boguk
www.postgresql-consulting.ru
...
Рейтинг: 0 / 0
Курсор (передача)
    #39261143
Asew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Maxim Boguk,


Indent(столбец, который формируется)

my rows()
...
Рейтинг: 0 / 0
Курсор (передача)
    #39261149
Asew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Maxim Boguk,
или я просто Вас не понял, что вы имеете под определением) Если в Postgres-е выполнить эту фукцию транзакцией с раскрытием курсора Fetch-ем получается Indent - столбец и под ним мои записи. Что касается declare my_function (), то этого нет .. Зачем ????
...
Рейтинг: 0 / 0
25 сообщений из 34, страница 1 из 2
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Курсор (передача)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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