Fondamentalmente corretto. La differenza importante è che SET è un comando SQL mentre gli altri due sono meta-comandi psql - indicati dal prefisso \ .
-
SETè un comando SQL per modificare i parametri di runtime. Viene eseguito sul server e non ha nulla a che fare con psql di per sé. -
\setè un meta-comando psql e, per documentazione :
\psetè un altro meta-comando psql. Per documentazione :