diff options
author | Robin Appelman <icewind@owncloud.com> | 2016-01-15 16:47:17 +0100 |
---|---|---|
committer | Robin Appelman <icewind@owncloud.com> | 2016-01-18 12:09:01 +0100 |
commit | ebd15fd5edbce1c173af885e61f9a1fbd1b4e33e (patch) | |
tree | 581a4a794fbacda04494a8eab7e8a09ca2d1f979 /lib/private | |
parent | 895fd49fb26da4c00ab8c64a45d58dae41fd7962 (diff) | |
download | nextcloud-server-ebd15fd5edbce1c173af885e61f9a1fbd1b4e33e.tar.gz nextcloud-server-ebd15fd5edbce1c173af885e61f9a1fbd1b4e33e.zip |
handle bool in setValue
Diffstat (limited to 'lib/private')
-rw-r--r-- | lib/private/db/connection.php | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/lib/private/db/connection.php b/lib/private/db/connection.php index 2d7545df36e..a961c84f372 100644 --- a/lib/private/db/connection.php +++ b/lib/private/db/connection.php @@ -242,6 +242,16 @@ class Connection extends \Doctrine\DBAL\Connection implements IDBConnection { return $this->adapter->insertIfNotExist($table, $input, $compare); } + private function getType($value) { + if (is_bool($value)) { + return \PDO::PARAM_BOOL; + } else if (is_int($value)) { + return \PDO::PARAM_INT; + } else { + return \PDO::PARAM_STR; + } + } + /** * Insert or update a row value * @@ -259,7 +269,7 @@ class Connection extends \Doctrine\DBAL\Connection implements IDBConnection { $insertQb->insert($table) ->values( array_map(function($value) use ($insertQb) { - return $insertQb->createNamedParameter($value); + return $insertQb->createNamedParameter($value, $this->getType($value)); }, array_merge($keys, $values)) ); return $insertQb->execute(); @@ -268,13 +278,13 @@ class Connection extends \Doctrine\DBAL\Connection implements IDBConnection { $updateQb = $this->getQueryBuilder(); $updateQb->update($table); foreach ($values as $name => $value) { - $updateQb->set($name, $updateQb->createNamedParameter($value)); + $updateQb->set($name, $updateQb->createNamedParameter($value), $this->getType($value)); } $where = $updateQb->expr()->andx(); $whereValues = array_merge($keys, $updatePreconditionValues); foreach ($whereValues as $name => $value) { $where->add($updateQb->expr()->eq( - $name, $updateQb->createNamedParameter($value) + $name, $updateQb->createNamedParameter($value, $this->getType($value)) )); } $updateQb->where($where); |