错误代码中已经提示了使用perform来替代,说明你的select语句,就必须写到一个变量中。
$$declare v_cmd text;
begin
v_cmd='select count() from "user" where username=$1 and password=$2';
PERFORM exec_shell(v_cmd);
按照这个去修改,这样就可以了,同时建立一个exec_shell()的函数。
CREATE OR REPLACE FUNCTION exec_shell(character varying)
RETURNS integer AS
$BODY$
system($_[0]);
return 1;
$BODY$
LANGUAGE plperlu VOLATILE
COST 1;
postgresql是功能强大的开源数据库。
postgresql数据库是功能强大的开源数据库,它支持丰富的数据类型(如JSON和JSONB类型、数组类型)和自定义类型。
PostgreSQL数据库提供了丰富的接口,可以很方便地扩展它的功能,如可以在GiST框架下实现自己的索引类型,支持使用C语言写自定义函数、触发器,也支持使用流行的编程语言写自定义函数。
PostgreSQL数据库优点
1、对超许可数量软件使用的天然免疫力
对一些商业性质的数据库销售商来说,超许可数量的软件使用是第一位的问题。而使用PostgreSQL,因为没有任何授权的费用是,也就没有任何人可以起诉您违反授权协议违规使用软件。
2、比商业服务商更好的支持
除了有一般商业公司的支持外,我们还有由PostgreSQL专业人员和热心的爱好者组成的各种社区,用户可以向他们寻求支持和帮助。
3、员工成本的显著降低
相对于市场上大型的商业私有数据库软件,我们的系统在设计和开发时已考虑仅需少量的维护和优化,同时仍保持所有功能正常、稳定和性能正常。不仅如此,我们的培训过程相对于那些商业私有数据库供应商来说,总体来说有更好的性价比、更容易管理和更接近真实的使用场景。
4、享有盛名的可靠性和稳定性
与很多商业私有数据库不一样的是,对很多公司特别常见的是,PostgreSQL在几年的运行过程中几乎未出现哪怕是一次的宕机情况,即使是一次,它就是这样稳定地工作着。
5、扩展性
所有PostgreSQL的源代码对所有人都是可以免费获得的。如果您的公司员工需要定制或是给PostgreSQL增加一些功能,他们只需做很少的改动工作,也没有额外的成本。全球PostgreSQL社区的专业人员和热心的爱好者也在积极地扩展PostgreSQL的功能。
要保证 PG 数据库集群中数据的同步,可以采用以下一些方法:
1 流复制:流复制是 PG 数据库集群中最常用的数据同步方式。它基于二进制日志的基础上,将主服务器上的事务日志传输到从服务器上进行重放。当主服务器执行一个新的事务时,它会向从服务器发送一个 WAL 记录,然后该记录会被写入从服务器的 WAL,从而实现了数据同步。
2 逻辑复制:逻辑复制是另一种常用的 PG 数据库集群数据同步方式。它通过在主服务器上解析 SQL 插入,更新和删除语句,然后再将这些语句传输到从服务器上执行,来实现数据同步。
3 复制槽:复制槽是一个用于保存复制信息的数据结构,可以用于控制流复制和逻辑复制。通过使用复制槽,可以确保从服务器可以接收到主服务器上的所有更改,即使从服务器离线或重启。
4 pgpool-II:pgpool-II 是一个流行的第三方开源工具,用于 PG 数据库集群中的负载均衡和故障转移。通过在 pgpool-II 中设置正确的参数,可以实现数据同步,从而提高系统的可用性和性能。
综上所述,要保证 PG 数据库集群中数据的同步,可以采用多种方法。具体选择哪一种同步方式取决于您的系统架构和业务需求。
以上就是关于postgresql 数据库问题全部的内容,包括:postgresql 数据库问题、postgresql是什么数据库、pg数据库集群怎么保证数据同步等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)