powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / ОШИБКА: абсолютный путь недопустим SQL-состояние: 42501
9 сообщений из 9, страница 1 из 1
ОШИБКА: абсолютный путь недопустим SQL-состояние: 42501
    #40052200
комит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.

Надо считать текстовый файл в БД, вне PGDATA

Код: sql
1.
2.
3.
create table test_b2(id int, bbb oid);

insert into test_b2(id,bbb) VALUES (2,lo_from_bytea(0,pg_read_binary_file('C:\1.txt')));





ОШИБКА: абсолютный путь недопустим SQL-состояние: 42501




Подскажите как это сделать?

(copy не подходит из-за разных колировок)
...
Рейтинг: 0 / 0
ОШИБКА: абсолютный путь недопустим SQL-состояние: 42501
    #40052209
комит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
куда копать?
...
Рейтинг: 0 / 0
ОШИБКА: абсолютный путь недопустим SQL-состояние: 42501
    #40052217
Melkij
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pg_read_binary_file может читать только из pgdata или log_directory.

Берите pl/что-нибудь из прикладных языков и читайте файл оттуда. Если настолько хотите хранить файлы в базе.
...
Рейтинг: 0 / 0
ОШИБКА: абсолютный путь недопустим SQL-состояние: 42501
    #40052303
комит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Melkij
pg_read_binary_file может читать только из pgdata или log_directory.

Берите pl/что-нибудь из прикладных языков и читайте файл оттуда. Если настолько хотите хранить файлы в базе.



файлик маленький, меньше 1 кб.

А что можно взять из прикладных языков чтобы ничего дополнительно не устанавливать? (максимум расширение)
...
Рейтинг: 0 / 0
ОШИБКА: абсолютный путь недопустим SQL-состояние: 42501
    #40052310
Фотография mefman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
комит
Melkij
pg_read_binary_file может читать только из pgdata или log_directory.

Берите pl/что-нибудь из прикладных языков и читайте файл оттуда. Если настолько хотите хранить файлы в базе.



файлик маленький, меньше 1 кб.

А что можно взять из прикладных языков чтобы ничего дополнительно не устанавливать? (максимум расширение)

на винде - как ни крути придется устанавливать.
не думаю что есть что-то вроде "pl_cmd" или "pl_powershell" ))
...
Рейтинг: 0 / 0
ОШИБКА: абсолютный путь недопустим SQL-состояние: 42501
    #40052316
комит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mefman
комит
пропущено...



файлик маленький, меньше 1 кб.

А что можно взять из прикладных языков чтобы ничего дополнительно не устанавливать? (максимум расширение)

на винде - как ни крути придется устанавливать.
не думаю что есть что-то вроде "pl_cmd" или "pl_powershell" ))



мож как-то можно?
...
Рейтинг: 0 / 0
ОШИБКА: абсолютный путь недопустим SQL-состояние: 42501
    #40052363
Shweik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
комит, Нет. Это небезопасная,искусственно обделённая архитектура, чреватая проблемами, и если уж вы её выбрали - без дополнительных инструментов не обойтись.
Таков путь.
...
Рейтинг: 0 / 0
ОШИБКА: абсолютный путь недопустим SQL-состояние: 42501
    #40052426
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
комит,

почитал я это все... так и не понял почему и чем вас не устраивает в psql

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
\lo_import filename [ comment ]
Stores the file into a PostgreSQL large object. Optionally, it associates the given comment with the object. Example:

foo=> \lo_import '/home/peter/pictures/photo.xcf' 'a picture of me'
lo_import 152801
The response indicates that the large object received object ID 152801, which can be used to access the newly-created large object in the future. For the sake of readability, it is recommended to always associate a human-readable comment with every object. Both OIDs and comments can be viewed with the \lo_list command.

Note that this command is subtly different from the server-side lo_import because it acts as the local user on the local file system, rather than the server's user and file system.

ps: и почему никто не предложил.

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
ОШИБКА: абсолютный путь недопустим SQL-состояние: 42501
    #40054885
Павел Лузанов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
комит,

Предположу, что версия сервера меньше 11.

Для полноты картины добавлю, что в 11 версии появились системные роли pg_read_server_files, pg_write_server_files и pg_execute_server_program для управления доступом к файловой системе. И сняли ограничение на работу с файлами только из PGDATA.
Код: sql
1.
2.
3.
4.
select left(pg_read_file('/etc/passwd'),10);
    left    
------------
 root:x:0:0
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / ОШИБКА: абсолютный путь недопустим SQL-состояние: 42501
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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