From 5e3ecbbf96ff0268220a85aaef3c99c84e13ab44 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Sat, 17 Sep 2011 02:36:04 +0200 Subject: [PATCH] dont use numRows when it's not needed since it can be expensive --- lib/appconfig.php | 10 ++++------ lib/group/database.php | 2 +- lib/preferences.php | 11 +++++------ lib/user/database.php | 4 ++-- 4 files changed, 12 insertions(+), 15 deletions(-) diff --git a/lib/appconfig.php b/lib/appconfig.php index c64a15b893..392782b258 100644 --- a/lib/appconfig.php +++ b/lib/appconfig.php @@ -93,14 +93,12 @@ class OC_Appconfig{ // At least some magic in here :-) $query = OC_DB::prepare( 'SELECT configvalue FROM *PREFIX*appconfig WHERE appid = ? AND configkey = ?' ); $result = $query->execute( array( $app, $key )); - - if( !$result->numRows()){ + $row = $result->fetchRow(); + if($row){ + return $row["configvalue"]; + }else{ return $default; } - - $row = $result->fetchRow(); - - return $row["configvalue"]; } /** diff --git a/lib/group/database.php b/lib/group/database.php index 8a9fc53d39..7bf9c8bb5c 100644 --- a/lib/group/database.php +++ b/lib/group/database.php @@ -56,7 +56,7 @@ class OC_Group_Database extends OC_Group_Backend { $query = OC_DB::prepare( "SELECT gid FROM `*PREFIX*groups` WHERE gid = ?" ); $result = $query->execute( array( $gid )); - if( $result->numRows() > 0 ){ + if( !$result->fetchRow() ){ // Can not add an existing group return false; } diff --git a/lib/preferences.php b/lib/preferences.php index d53cdd538e..5af007f022 100644 --- a/lib/preferences.php +++ b/lib/preferences.php @@ -116,14 +116,13 @@ class OC_Preferences{ // Try to fetch the value, return default if not exists. $query = OC_DB::prepare( 'SELECT configvalue FROM *PREFIX*preferences WHERE userid = ? AND appid = ? AND configkey = ?' ); $result = $query->execute( array( $user, $app, $key )); - - if( !$result->numRows()){ + + $row = $result->fetchRow(); + if($row){ + return $row["configvalue"]; + }else{ return $default; } - - $row = $result->fetchRow(); - - return $row["configvalue"]; } /** diff --git a/lib/user/database.php b/lib/user/database.php index f29aaf00f0..452709c1fb 100644 --- a/lib/user/database.php +++ b/lib/user/database.php @@ -106,8 +106,8 @@ class OC_User_Database extends OC_User_Backend { $query = OC_DB::prepare( "SELECT uid FROM *PREFIX*users WHERE uid LIKE ? AND password = ?" ); $result = $query->execute( array( $uid, sha1( $password ))); - if( $result->numRows() > 0 ){ - $row=$result->fetchRow(); + $row=$result->fetchRow(); + if($row){ return $row['uid']; }else{ return false;