写在单独文件中的 psql 函数

psql function written in separate file

我正在学习 Postgres 中的 psql。 我的基本问题是当我创建这样一个函数时:

CREATE OR REPLACE FUNCTION totalRecords ()
RETURNS integer AS $total$
declare
    total integer;
BEGIN
  SELECT count(*) into total FROM COMPANY;
  RETURN total;
END;
$total$ LANGUAGE plpgsql;

我必须在提示命令行中编写所有代码。 如何将此代码保存在脚本中并从命令行调用它?脚本的扩展必须是 .sql ?我怎样才能调用这个脚本。

将脚本保存到文件中。然后这样执行:

psql -p portnumber -d database -U user -f mysqlscrpt.sql 

脚本的扩展名无关紧要。

@jkdba 的回答就足够了,但是,或者,如果您已经登录到 psql 控制台,则可以使用:

\i <sqlscript>.sql

\i为输入。 \o 是输出,它会写入文件而不是将其带入。 我提到这个是因为这让我记住了这个命令:)