W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
由數(shù)據(jù)庫(kù) TestCase 中的 getConnection()
方法所返回的連接界面有三個(gè)很有意思的方法:
<?php
interface PHPUnit_Extensions_Database_DB_IDatabaseConnection
{
public function createDataSet(Array $tableNames = NULL);
public function createQueryTable($resultName, $sql);
public function getRowCount($tableName, $whereClause = NULL);
// ...
}
?>
createDataSet()
方法創(chuàng)建一個(gè)在數(shù)據(jù)集實(shí)現(xiàn)一節(jié)描述過(guò)的 Database (DB) DataSet(數(shù)據(jù)庫(kù)數(shù)據(jù)集)。
<?php
class ConnectionTest extends PHPUnit_Extensions_Database_TestCase
{
public function testCreateDataSet()
{
$tableNames = array('guestbook');
$dataSet = $this->getConnection()->createDataSet();
}
}
?>
createQueryTable()
方法用于創(chuàng)建 QueryTable 的實(shí)例,需要為其指定結(jié)果名稱和所使用的 SQL 查詢。當(dāng)涉及到結(jié)果/表的斷言(如后面關(guān)于數(shù)據(jù)庫(kù)斷言 API 那一節(jié)所示)時(shí),這個(gè)方法會(huì)很方便。
<?php
class ConnectionTest extends PHPUnit_Extensions_Database_TestCase
{
public function testCreateQueryTable()
{
$tableNames = array('guestbook');
$queryTable = $this->getConnection()->createQueryTable('guestbook', 'SELECT * FROM guestbook');
}
}
?>
getRowCount()
方法提供了一種方便的方式來(lái)取得表中的行數(shù),并且還可以選擇附加一個(gè) WHERE 子句來(lái)在計(jì)數(shù)前對(duì)數(shù)據(jù)行進(jìn)行過(guò)濾。它可以和一個(gè)簡(jiǎn)單的相等斷言合用:
<?php
class ConnectionTest extends PHPUnit_Extensions_Database_TestCase
{
public function testGetRowCount()
{
$this->assertEquals(2, $this->getConnection()->getRowCount('guestbook'));
}
}
?>
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: