From 0a64f889e147d2716f140763f4bc696abc5687bc Mon Sep 17 00:00:00 2001 From: zbuse <5518208+zbuse@users.noreply.github.com> Date: Sat, 29 Aug 2026 13:52:41 +0800 Subject: [PATCH] Add extra parameter handling to SQL insert statements MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 增加%EXTRA% 增加parseExtra ,插入原句extra查询语句 ON CONFLICT 和 DO NOTHING'未做大写处理,留给think官方来填坑 --- src/db/builder/Pgsql.php | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/db/builder/Pgsql.php b/src/db/builder/Pgsql.php index 4be3e7ad..7eda108c 100644 --- a/src/db/builder/Pgsql.php +++ b/src/db/builder/Pgsql.php @@ -27,14 +27,14 @@ class Pgsql extends Builder * * @var string */ - protected $insertSql = 'INSERT INTO %TABLE% (%FIELD%) VALUES (%DATA%) %COMMENT%'; + protected $insertSql = 'INSERT INTO %TABLE% (%FIELD%) VALUES (%DATA%) %EXTRA% %COMMENT%'; /** * INSERT ALL SQL表达式. * * @var string */ - protected $insertAllSql = 'INSERT INTO %TABLE% (%FIELD%) %DATA% %COMMENT%'; + protected $insertAllSql = 'INSERT INTO %TABLE% (%FIELD%) %DATA% %EXTRA% %COMMENT%'; /** * limit分析. @@ -126,4 +126,17 @@ protected function parseRand(Query $query): string { return 'RANDOM()'; } + + /** + * 查询额外参数分析. + * + * @param Query $query 查询对象 + * @param string $extra 额外参数 + * + * @return string + */ + protected function parseExtra(Query $query, string $extra): string + { + return $extra === '' ? '' : ' ' . $extra; + } }