加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

PostgreSQL中用户定义的变量

发布时间:2020-12-13 16:06:11 所属栏目:百科 来源:网络整理
导读:我有以下 MySQL脚本,我想在PostgreSQL中实现. SET @statement = search_address_query; PREPARE dynquery FROM @statement; EXECUTE dynquery; DEALLOCATE PREPARE dynquery; 如何使用PostgreSQL定义用户定义的变量“@statement”. 解决方法 PostgreSQL通常
我有以下 MySQL脚本,我想在PostgreSQL中实现.

SET @statement = search_address_query;
      PREPARE dynquery FROM @statement;
      EXECUTE dynquery;
      DEALLOCATE PREPARE dynquery;

如何使用PostgreSQL定义用户定义的变量“@statement”.

解决方法

PostgreSQL通常不使用普通SQL中的变量.但你也可以这样做:

SET foo.test = 'SELECT bar FROM baz';

SELECT current_setting('foo.test');

阅读约Customized Options in the manual.

在PostgreSQL 9.1 or earlier you needed to declare custom_variable_classes之前你可以使用它.

但是,你不能没有一个PL(程序语言)EXECUTE dynamic SQL.您将使用DO命令执行ad-hoc语句(但您无法从中返回数据).或者使用CREATE FUNCTION创建一个执行动态SQL的函数(并且可以以任何可想象的方式返回数据).

使用动态SQL时,请务必防止SQL注入.

有关自定义变量的相关问题
Is there a way to define a named constant in a PostgreSQL query?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读