pá 26. 1. 2024 v 21:04 odesílatel Tom Lane <tgl@sss.pgh.pa.us> napsal:
Pavel Stehule <pavel.stehule@gmail.com> writes: > but why you need to do in psql? - you can prepare content outside and > execute just like echo "CREATE FUNCTION ...." | psql
The bit that's probably hard if you're trying to do this in a shell script is "quote this data as a SQL string literal". psql can get that right even in the face of encoding considerations, standard_conforming_strings, etc. Not sure you can build a fully bulletproof solution outside.
I don't know, maybe I have a problem with the described use case. I cannot imagine holding the body and head of PL routines in different places and I don't understand the necessity to join it.
On second hand, few years ago (if I remember well, I proposed some like `:{file}`. I don't remember the syntax. But it was not finished, and then I wrote