Rename IQueryBuilder::executeUpdate to IQueryBuilder::executeStatement
Because executeUpdate wasn't a great name. And in DBAL they also use executeStatement more consistently now. Ref https://github.com/doctrine/dbal/issues/4607 Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
This commit is contained in:
parent
6d3aef1849
commit
865661ed75
|
@ -309,9 +309,24 @@ class QueryBuilder implements IQueryBuilder {
|
||||||
throw new \RuntimeException('Invalid return type for query');
|
throw new \RuntimeException('Invalid return type for query');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Monkey-patched compatibility layer for apps that were adapted for Nextcloud 22 before
|
||||||
|
* the first beta, where executeStatement was named executeUpdate.
|
||||||
|
*
|
||||||
|
* Static analysis should catch those misuses, but until then let's try to keep things
|
||||||
|
* running.
|
||||||
|
*
|
||||||
|
* @internal
|
||||||
|
* @deprecated
|
||||||
|
* @todo drop ASAP
|
||||||
|
*/
|
||||||
public function executeUpdate(): int {
|
public function executeUpdate(): int {
|
||||||
|
return $this->executeStatement();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function executeStatement(): int {
|
||||||
if ($this->getType() === \Doctrine\DBAL\Query\QueryBuilder::SELECT) {
|
if ($this->getType() === \Doctrine\DBAL\Query\QueryBuilder::SELECT) {
|
||||||
throw new \RuntimeException('Invalid query type, expected INSERT, DELETE or UPDATE query');
|
throw new \RuntimeException('Invalid query type, expected INSERT, DELETE or UPDATE statement');
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
@ -321,7 +336,7 @@ class QueryBuilder implements IQueryBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!is_int($result)) {
|
if (!is_int($result)) {
|
||||||
throw new \RuntimeException('Invalid return type for query');
|
throw new \RuntimeException('Invalid return type for statement');
|
||||||
}
|
}
|
||||||
|
|
||||||
return $result;
|
return $result;
|
||||||
|
|
|
@ -101,7 +101,7 @@ abstract class QBMapper {
|
||||||
->where(
|
->where(
|
||||||
$qb->expr()->eq('id', $qb->createNamedParameter($entity->getId(), $idType))
|
$qb->expr()->eq('id', $qb->createNamedParameter($entity->getId(), $idType))
|
||||||
);
|
);
|
||||||
$qb->executeUpdate();
|
$qb->executeStatement();
|
||||||
return $entity;
|
return $entity;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -132,7 +132,7 @@ abstract class QBMapper {
|
||||||
$qb->setValue($column, $qb->createNamedParameter($value, $type));
|
$qb->setValue($column, $qb->createNamedParameter($value, $type));
|
||||||
}
|
}
|
||||||
|
|
||||||
$qb->executeUpdate();
|
$qb->executeStatement();
|
||||||
|
|
||||||
if ($entity->id === null) {
|
if ($entity->id === null) {
|
||||||
// When autoincrement is used id is always an int
|
// When autoincrement is used id is always an int
|
||||||
|
@ -211,7 +211,7 @@ abstract class QBMapper {
|
||||||
$qb->where(
|
$qb->where(
|
||||||
$qb->expr()->eq('id', $qb->createNamedParameter($id, $idType))
|
$qb->expr()->eq('id', $qb->createNamedParameter($id, $idType))
|
||||||
);
|
);
|
||||||
$qb->executeUpdate();
|
$qb->executeStatement();
|
||||||
|
|
||||||
return $entity;
|
return $entity;
|
||||||
}
|
}
|
||||||
|
|
|
@ -149,7 +149,7 @@ interface IQueryBuilder {
|
||||||
/**
|
/**
|
||||||
* Executes this query using the bound parameters and their types.
|
* Executes this query using the bound parameters and their types.
|
||||||
*
|
*
|
||||||
* Uses {@see Connection::executeQuery} for select statements and {@see Connection::executeUpdate}
|
* Uses {@see Connection::executeQuery} for select statements and {@see Connection::executeStatement}
|
||||||
* for insert, update and delete statements.
|
* for insert, update and delete statements.
|
||||||
*
|
*
|
||||||
* Warning: until Nextcloud 20, this method could return a \Doctrine\DBAL\Driver\Statement but since
|
* Warning: until Nextcloud 20, this method could return a \Doctrine\DBAL\Driver\Statement but since
|
||||||
|
@ -175,15 +175,15 @@ interface IQueryBuilder {
|
||||||
public function executeQuery(): IResult;
|
public function executeQuery(): IResult;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Execute for insert, update and delete statements
|
* Execute insert, update and delete statements
|
||||||
*
|
*
|
||||||
* @return int
|
* @return int the number of affected rows
|
||||||
* @since 22.0.0
|
* @since 22.0.0
|
||||||
*
|
*
|
||||||
* @throws Exception
|
* @throws Exception
|
||||||
* @throws \RuntimeException in case of usage with select query
|
* @throws \RuntimeException in case of usage with select query
|
||||||
*/
|
*/
|
||||||
public function executeUpdate(): int;
|
public function executeStatement(): int;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the complete SQL string formed by the current specifications of this QueryBuilder.
|
* Gets the complete SQL string formed by the current specifications of this QueryBuilder.
|
||||||
|
|
Loading…
Reference in New Issue