|
COPY. Обработка пустых строк.
|
|||
---|---|---|---|
#18+
Господа, никак не могу побороть обработку пустых строк в CSV. Есть хранимка, внутри генерю код на выпонление, по сути следующее получается: Код: plsql 1. 2. 3.
Когда в самом файле после данных есть множество пустых строк (теоретически их там не должно быть, но пользователи они такие и поэтому надо данный кейс обработать). Получаю сейчас на выполнение вот такую ошибку: Код: plsql 1. 2. 3.
Сначала были ::int в нужных местах, но я и этим пожертвовал и перевел все поля в тип ::text Код: plsql 1. 2. 3.
Т.е. в итоге мне нужно, чтобы пустые строчки просто проигнорировались... ну или записались с каким-либо 'NULL', а после загрузки я дропну такие записи. Хелп плиз... ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2020, 17:46 |
|
COPY. Обработка пустых строк.
|
|||
---|---|---|---|
#18+
Legi, COPY ... FROM PROGRAM ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2020, 08:19 |
|
COPY. Обработка пустых строк.
|
|||
---|---|---|---|
#18+
fte, PROGRAM документацияВыполняемая команда. COPY FROM читает стандартный вывод команды, а COPY TO записывает в её стандартный ввод. Заметьте, что команда запускается через командную оболочку, так что если требуется передать этой команде какие-либо аргументы, поступающие из недоверенного источника, необходимо аккуратно избавиться от всех спецсимволов, имеющих особое значение в оболочке, либо экранировать их. По соображениям безопасности лучше ограничиться фиксированной строкой команды или как минимум не позволять пользователям вводить в неё произвольное содержимое. https://postgrespro.ru/docs/postgresql/11/sql-copy Не совсем понял как это может помочь? :( ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2020, 09:46 |
|
COPY. Обработка пустых строк.
|
|||
---|---|---|---|
#18+
Legi fte, PROGRAM документацияВыполняемая команда. COPY FROM читает стандартный вывод команды, а COPY TO записывает в её стандартный ввод. Заметьте, что команда запускается через командную оболочку, так что если требуется передать этой команде какие-либо аргументы, поступающие из недоверенного источника, необходимо аккуратно избавиться от всех спецсимволов, имеющих особое значение в оболочке, либо экранировать их. По соображениям безопасности лучше ограничиться фиксированной строкой команды или как минимум не позволять пользователям вводить в неё произвольное содержимое. https://postgrespro.ru/docs/postgresql/11/sql-copy Не совсем понял как это может помочь? :( Запускаете из команды COPY скрипт, предварительной обработки файла (удаляете пустые строки) , на стандартный вход copy подаётся файл без пустых строк, для юникса примерно так: Код: sql 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2020, 08:24 |
|
|
start [/forum/topic.php?fid=53&msg=39940452&tid=1994758]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
59ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 170ms |
0 / 0 |