Browse Source

renamed Command::queryRow() to queryOne().

tags/2.0.0-beta
Qiang Xue 11 years ago
parent
commit
f03cdf0a47
  1. 4
      framework/yii/caching/DbDependency.php
  2. 2
      framework/yii/db/ActiveQuery.php
  3. 4
      framework/yii/db/Command.php
  4. 2
      framework/yii/db/Query.php
  5. 2
      framework/yii/db/mysql/QueryBuilder.php
  6. 2
      framework/yii/db/mysql/Schema.php
  7. 4
      framework/yii/rbac/DbManager.php
  8. 2
      framework/yii/web/DbSession.php
  9. 16
      tests/unit/framework/db/CommandTest.php
  10. 2
      tests/unit/framework/db/mssql/MssqlCommandTest.php

4
framework/yii/caching/DbDependency.php

@ -66,10 +66,10 @@ class DbDependency extends Dependency
if ($db->enableQueryCache) { if ($db->enableQueryCache) {
// temporarily disable and re-enable query caching // temporarily disable and re-enable query caching
$db->enableQueryCache = false; $db->enableQueryCache = false;
$result = $db->createCommand($this->sql, $this->params)->queryRow(); $result = $db->createCommand($this->sql, $this->params)->queryOne();
$db->enableQueryCache = true; $db->enableQueryCache = true;
} else { } else {
$result = $db->createCommand($this->sql, $this->params)->queryRow(); $result = $db->createCommand($this->sql, $this->params)->queryOne();
} }
return $result; return $result;
} }

2
framework/yii/db/ActiveQuery.php

@ -123,7 +123,7 @@ class ActiveQuery extends Query
public function one($db = null) public function one($db = null)
{ {
$command = $this->createCommand($db); $command = $this->createCommand($db);
$row = $command->queryRow(); $row = $command->queryOne();
if ($row !== false && !$this->asArray) { if ($row !== false && !$this->asArray) {
/** @var $class ActiveRecord */ /** @var $class ActiveRecord */
$class = $this->modelClass; $class = $this->modelClass;

4
framework/yii/db/Command.php

@ -19,7 +19,7 @@ use yii\caching\Cache;
* *
* To execute a non-query SQL (such as INSERT, DELETE, UPDATE), call [[execute()]]. * To execute a non-query SQL (such as INSERT, DELETE, UPDATE), call [[execute()]].
* To execute a SQL statement that returns result data set (such as SELECT), * To execute a SQL statement that returns result data set (such as SELECT),
* use [[queryAll()]], [[queryRow()]], [[queryColumn()]], [[queryScalar()]], or [[query()]]. * use [[queryAll()]], [[queryOne()]], [[queryColumn()]], [[queryScalar()]], or [[query()]].
* For example, * For example,
* *
* ~~~ * ~~~
@ -335,7 +335,7 @@ class Command extends \yii\base\Component
* results in nothing. * results in nothing.
* @throws Exception execution failed * @throws Exception execution failed
*/ */
public function queryRow($fetchMode = null) public function queryOne($fetchMode = null)
{ {
return $this->queryInternal('fetch', $fetchMode); return $this->queryInternal('fetch', $fetchMode);
} }

2
framework/yii/db/Query.php

@ -166,7 +166,7 @@ class Query extends Component
*/ */
public function one($db = null) public function one($db = null)
{ {
return $this->createCommand($db)->queryRow(); return $this->createCommand($db)->queryOne();
} }
/** /**

2
framework/yii/db/mysql/QueryBuilder.php

@ -50,7 +50,7 @@ class QueryBuilder extends \yii\db\QueryBuilder
public function renameColumn($table, $oldName, $newName) public function renameColumn($table, $oldName, $newName)
{ {
$quotedTable = $this->db->quoteTableName($table); $quotedTable = $this->db->quoteTableName($table);
$row = $this->db->createCommand('SHOW CREATE TABLE ' . $quotedTable)->queryRow(); $row = $this->db->createCommand('SHOW CREATE TABLE ' . $quotedTable)->queryOne();
if ($row === false) { if ($row === false) {
throw new Exception("Unable to find column '$oldName' in table '$table'."); throw new Exception("Unable to find column '$oldName' in table '$table'.");
} }

2
framework/yii/db/mysql/Schema.php

@ -212,7 +212,7 @@ class Schema extends \yii\db\Schema
*/ */
protected function findConstraints($table) protected function findConstraints($table)
{ {
$row = $this->db->createCommand('SHOW CREATE TABLE ' . $this->quoteSimpleTableName($table->name))->queryRow(); $row = $this->db->createCommand('SHOW CREATE TABLE ' . $this->quoteSimpleTableName($table->name))->queryOne();
if (isset($row['Create Table'])) { if (isset($row['Create Table'])) {
$sql = $row['Create Table']; $sql = $row['Create Table'];
} else { } else {

4
framework/yii/rbac/DbManager.php

@ -303,7 +303,7 @@ class DbManager extends Manager
$row = $query->from($this->assignmentTable) $row = $query->from($this->assignmentTable)
->where(array('user_id' => $userId, 'item_name' => $itemName)) ->where(array('user_id' => $userId, 'item_name' => $itemName))
->createCommand($this->db) ->createCommand($this->db)
->queryRow(); ->queryOne();
if ($row !== false) { if ($row !== false) {
if (($data = @unserialize($row['data'])) === false) { if (($data = @unserialize($row['data'])) === false) {
$data = null; $data = null;
@ -479,7 +479,7 @@ class DbManager extends Manager
$row = $query->from($this->itemTable) $row = $query->from($this->itemTable)
->where(array('name' => $name)) ->where(array('name' => $name))
->createCommand($this->db) ->createCommand($this->db)
->queryRow(); ->queryOne();
if ($row !== false) { if ($row !== false) {
if (($data = @unserialize($row['data'])) === false) { if (($data = @unserialize($row['data'])) === false) {

2
framework/yii/web/DbSession.php

@ -111,7 +111,7 @@ class DbSession extends Session
$row = $query->from($this->sessionTable) $row = $query->from($this->sessionTable)
->where(array('id' => $oldID)) ->where(array('id' => $oldID))
->createCommand($this->db) ->createCommand($this->db)
->queryRow(); ->queryOne();
if ($row !== false) { if ($row !== false) {
if ($deleteOldSession) { if ($deleteOldSession) {
$this->db->createCommand() $this->db->createCommand()

16
tests/unit/framework/db/CommandTest.php

@ -99,22 +99,22 @@ class CommandTest extends DatabaseTestCase
$rows = $db->createCommand('SELECT * FROM tbl_customer WHERE id=10')->queryAll(); $rows = $db->createCommand('SELECT * FROM tbl_customer WHERE id=10')->queryAll();
$this->assertEquals(array(), $rows); $this->assertEquals(array(), $rows);
// queryRow // queryOne
$sql = 'SELECT * FROM tbl_customer ORDER BY id'; $sql = 'SELECT * FROM tbl_customer ORDER BY id';
$row = $db->createCommand($sql)->queryRow(); $row = $db->createCommand($sql)->queryOne();
$this->assertEquals(1, $row['id']); $this->assertEquals(1, $row['id']);
$this->assertEquals('user1', $row['name']); $this->assertEquals('user1', $row['name']);
$sql = 'SELECT * FROM tbl_customer ORDER BY id'; $sql = 'SELECT * FROM tbl_customer ORDER BY id';
$command = $db->createCommand($sql); $command = $db->createCommand($sql);
$command->prepare(); $command->prepare();
$row = $command->queryRow(); $row = $command->queryOne();
$this->assertEquals(1, $row['id']); $this->assertEquals(1, $row['id']);
$this->assertEquals('user1', $row['name']); $this->assertEquals('user1', $row['name']);
$sql = 'SELECT * FROM tbl_customer WHERE id=10'; $sql = 'SELECT * FROM tbl_customer WHERE id=10';
$command = $db->createCommand($sql); $command = $db->createCommand($sql);
$this->assertFalse($command->queryRow()); $this->assertFalse($command->queryOne());
// queryColumn // queryColumn
$sql = 'SELECT * FROM tbl_customer'; $sql = 'SELECT * FROM tbl_customer';
@ -178,7 +178,7 @@ class CommandTest extends DatabaseTestCase
$this->assertEquals(1, $command->execute()); $this->assertEquals(1, $command->execute());
$sql = 'SELECT * FROM tbl_type'; $sql = 'SELECT * FROM tbl_type';
$row = $db->createCommand($sql)->queryRow(); $row = $db->createCommand($sql)->queryOne();
$this->assertEquals($intCol, $row['int_col']); $this->assertEquals($intCol, $row['int_col']);
$this->assertEquals($charCol, $row['char_col']); $this->assertEquals($charCol, $row['char_col']);
$this->assertEquals($floatCol, $row['float_col']); $this->assertEquals($floatCol, $row['float_col']);
@ -204,20 +204,20 @@ class CommandTest extends DatabaseTestCase
// default: FETCH_ASSOC // default: FETCH_ASSOC
$sql = 'SELECT * FROM tbl_customer'; $sql = 'SELECT * FROM tbl_customer';
$command = $db->createCommand($sql); $command = $db->createCommand($sql);
$result = $command->queryRow(); $result = $command->queryOne();
$this->assertTrue(is_array($result) && isset($result['id'])); $this->assertTrue(is_array($result) && isset($result['id']));
// FETCH_OBJ, customized via fetchMode property // FETCH_OBJ, customized via fetchMode property
$sql = 'SELECT * FROM tbl_customer'; $sql = 'SELECT * FROM tbl_customer';
$command = $db->createCommand($sql); $command = $db->createCommand($sql);
$command->fetchMode = \PDO::FETCH_OBJ; $command->fetchMode = \PDO::FETCH_OBJ;
$result = $command->queryRow(); $result = $command->queryOne();
$this->assertTrue(is_object($result)); $this->assertTrue(is_object($result));
// FETCH_NUM, customized in query method // FETCH_NUM, customized in query method
$sql = 'SELECT * FROM tbl_customer'; $sql = 'SELECT * FROM tbl_customer';
$command = $db->createCommand($sql); $command = $db->createCommand($sql);
$result = $command->queryRow(array(), \PDO::FETCH_NUM); $result = $command->queryOne(array(), \PDO::FETCH_NUM);
$this->assertTrue(is_array($result) && isset($result[0])); $this->assertTrue(is_array($result) && isset($result[0]));
} }

2
tests/unit/framework/db/mssql/MssqlCommandTest.php

@ -63,7 +63,7 @@ class MssqlCommandTest extends CommandTest
$this->assertEquals(1, $command->execute()); $this->assertEquals(1, $command->execute());
$sql = 'SELECT int_col, char_col, float_col, CONVERT([nvarchar], blob_col) AS blob_col, numeric_col FROM tbl_type'; $sql = 'SELECT int_col, char_col, float_col, CONVERT([nvarchar], blob_col) AS blob_col, numeric_col FROM tbl_type';
$row = $db->createCommand($sql)->queryRow(); $row = $db->createCommand($sql)->queryOne();
$this->assertEquals($intCol, $row['int_col']); $this->assertEquals($intCol, $row['int_col']);
$this->assertEquals($charCol, trim($row['char_col'])); $this->assertEquals($charCol, trim($row['char_col']));
$this->assertEquals($floatCol, $row['float_col']); $this->assertEquals($floatCol, $row['float_col']);

Loading…
Cancel
Save