pgsql调试sql

Posted fjnjxr

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pgsql调试sql相关的知识,希望对你有一定的参考价值。

用了一段时间的pgsql数据库,一直没搞明白怎么调试SQL,今天遇到了一段比较长的sql,然后找到一种方法,记录备用。

<?php
$sql = "SELECT * from table WHERE col_a = $1 and col_b=$2 and col_c=$3";
$params = array (42, "a string", NULL);
$debug = preg_replace_callback('/\\$(\\d+)\\b/', function($match) use ($params)             $key=($match[1]-1); return ( is_null($params[$key])?'NULL':pg_escape_literal($params[$key]) );        , $sql);
echo "$debug";
//prints:   SELECT * from table WHERE col_a = '42' and col_b='a string' and col_c=NULL?>

https://www.php.net/manual/zh/function.pg-query-params

以上是关于pgsql调试sql的主要内容,如果未能解决你的问题,请参考以下文章

pgsql调试sql

pgsql调试sql

编写/调试复杂 PL/pgSQL 查询的最佳实践

sql pgsql_table_sizes.sql

PL/pgSQL 中 PL/SQL %NOTFOUND 的等价物是啥?

pgsql包含字段