Commit 8d0bd31e authored by Benjamin Eberlei's avatar Benjamin Eberlei

Merge branch 'DBAL-399' into 2.3

parents 00f9575d d1843938
......@@ -54,7 +54,7 @@ class SQLParserUtils
$stmtLen = strlen($statement);
$paramMap = array();
for ($i = 0; $i < $stmtLen; $i++) {
if ($statement[$i] == $match && !$inLiteral) {
if ($statement[$i] == $match && !$inLiteral && ($isPositional || $statement[$i+1] != '=')) {
// real positional parameter detected
if ($isPositional) {
$paramMap[$count] = $i;
......@@ -180,4 +180,4 @@ class SQLParserUtils
return array($query, $paramsOrd, $typesOrd);
}
}
\ No newline at end of file
}
......@@ -35,6 +35,8 @@ class SQLParserUtilsTest extends \Doctrine\Tests\DbalTestCase
array('SELECT ":foo" FROM Foo WHERE bar IN (:name1, :name2)', false, array(37 => 'name1', 45 => 'name2')),
array("SELECT ':foo' FROM Foo WHERE bar IN (:name1, :name2)", false, array(37 => 'name1', 45 => 'name2')),
array('SELECT :foo_id', false, array(7 => 'foo_id')), // Ticket DBAL-231
array('SELECT @rank := 1', false, array()), // Ticket DBAL-398
array('SELECT @rank := 1 AS rank, :foo AS foo FROM :bar', false, array(27 => 'foo', 44 => 'bar')), // Ticket DBAL-398
);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment