21、PostgreSQL编程与安全:从函数到动态SQL及认证

PostgreSQL编程与安全:从函数到动态SQL及认证

1. 函数类型与返回值

在PostgreSQL中,PL/pgSQL和SQL函数可以返回不同类型的值。一些开发者将返回单行单列标量变量的函数称为标量函数,其返回类型可以是基本类型、复合类型、域类型、伪类型或域数据类型。

例如,下面的函数返回某个账户的JSON表示:

CREATE OR REPLACE FUNCTION car_portal_app.get_account_in_json (account_id INT) RETURNS JSON AS
$$
  SELECT row_to_json(account) FROM car_portal_app.account WHERE 
  account_id = $1;
$$
LANGUAGE SQL;

测试代码如下:

WITH inserted_account AS (
  INSERT into car_portal_app.account VALUES (DEFAULT, 
  'first_name', 'last_name', '[email protected]','some_pass') 
  RETURNING account_id
) SELECT  car_portal_app.get_account_in_json (account_id) FROM inserted_account;

结果示例:

"{"acc
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值