Compare commits

...

2 Commits

Author SHA1 Message Date
e286d7f913 DB IO placeholder counter fix 2024-12-24 12:49:49 +09:00
e148a39902 Release: v9.25.2 2024-12-23 11:37:26 +09:00
4 changed files with 27 additions and 4 deletions

View File

@@ -1 +1 @@
9.25.1.1 9.25.2

View File

@@ -26,7 +26,9 @@ class ConvertPlaceholder
. '&&|' // array overlap . '&&|' // array overlap
. '\-\|\-|' // range overlap for array . '\-\|\-|' // range overlap for array
. '[^-]-{1}|' // single -, used in JSON too . '[^-]-{1}|' // single -, used in JSON too
. '->|->>|#>|#>>|@>|<@|@@|@\?|\?{1}|\?\||\?&|#-'; //JSON searches, Array searchs, etc . '->|->>|#>|#>>|@>|<@|@@|@\?|\?{1}|\?\||\?&|#-|' // JSON searches, Array searchs, etc
. 'THEN|ELSE' // command parts (CASE)
;
/** @var string the main regex including the pattern query split */ /** @var string the main regex including the pattern query split */
private const PATTERN_ELEMENT = '(?:\'.*?\')?\s*(?:' . self::PATTERN_QUERY_SPLIT . ')\s*'; private const PATTERN_ELEMENT = '(?:\'.*?\')?\s*(?:' . self::PATTERN_QUERY_SPLIT . ')\s*';
/** @var string comment regex /** @var string comment regex

View File

@@ -115,7 +115,7 @@ class AsymmetricAnonymousEncryption
* @return string * @return string
* @throws \UnexpectedValueException key pair empty * @throws \UnexpectedValueException key pair empty
* @throws \UnexpectedValueException invalid hex key pair * @throws \UnexpectedValueException invalid hex key pair
* @throws \UnexpectedValueException key pair not correct size * @throws \RangeException key pair not correct size
*/ */
private function createKeyPair( private function createKeyPair(
#[\SensitiveParameter] #[\SensitiveParameter]
@@ -147,7 +147,7 @@ class AsymmetricAnonymousEncryption
* @return string * @return string
* @throws \UnexpectedValueException public key empty * @throws \UnexpectedValueException public key empty
* @throws \UnexpectedValueException invalid hex key * @throws \UnexpectedValueException invalid hex key
* @throws \UnexpectedValueException invalid key length * @throws \RangeException invalid key length
*/ */
private function createPublicKey(?string $public_key): string private function createPublicKey(?string $public_key): string
{ {

View File

@@ -5196,6 +5196,27 @@ final class CoreLibsDBIOTest extends TestCase
SQL, SQL,
'count' => 1, 'count' => 1,
'convert' => false, 'convert' => false,
],
'update with case' => [
'query' => <<<SQL
UPDATE table_with_primary_key SET
row_int = $1::INT,
row_varchar = CASE WHEN row_int = 1 THEN $2 ELSE 'bar'::VARCHAR END
WHERE
row_varchar = $3
SQL,
'count' => 3,
'convert' => false,
],
'select with case' => [
'query' => <<<SQL
SELECT row_int
FROM table_with_primary_key
WHERE
row_varchar = CASE WHEN row_int = 1 THEN $1 ELSE $2 END
SQL,
'count' => 2,
'convert' => false,
] ]
]; ];
} }