本文整理匯總了PHP中DboSource::buildIndex方法的典型用法代碼示例。如果您正苦於以下問題:PHP DboSource::buildIndex方法的具體用法?PHP DboSource::buildIndex怎麽用?PHP DboSource::buildIndex使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類DboSource
的用法示例。
在下文中一共展示了DboSource::buildIndex方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: testBuildIndex
/**
* testBuildIndex method
*
* @return void
*/
public function testBuildIndex()
{
$data = array('PRIMARY' => array('column' => 'id'));
$result = $this->Dbo->buildIndex($data);
$expected = array('PRIMARY KEY (`id`)');
$this->assertSame($expected, $result);
$data = array('MyIndex' => array('column' => 'id', 'unique' => true));
$result = $this->Dbo->buildIndex($data);
$expected = array('UNIQUE KEY `MyIndex` (`id`)');
$this->assertEquals($expected, $result);
$data = array('MyIndex' => array('column' => array('id', 'name'), 'unique' => true));
$result = $this->Dbo->buildIndex($data);
$expected = array('UNIQUE KEY `MyIndex` (`id`, `name`)');
$this->assertEquals($expected, $result);
$data = array('MyFtIndex' => array('column' => array('name', 'description'), 'type' => 'fulltext'));
$result = $this->Dbo->buildIndex($data);
$expected = array('FULLTEXT KEY `MyFtIndex` (`name`, `description`)');
$this->assertEquals($expected, $result);
$data = array('MyTextIndex' => array('column' => 'text_field', 'length' => array('text_field' => 20)));
$result = $this->Dbo->buildIndex($data);
$expected = array('KEY `MyTextIndex` (`text_field`(20))');
$this->assertEquals($expected, $result);
$data = array('MyMultiTextIndex' => array('column' => array('text_field1', 'text_field2'), 'length' => array('text_field1' => 20, 'text_field2' => 20)));
$result = $this->Dbo->buildIndex($data);
$expected = array('KEY `MyMultiTextIndex` (`text_field1`(20), `text_field2`(20))');
$this->assertEquals($expected, $result);
}
示例2: testBuildIndex
/**
* testBuildIndex method
*
* @return void
*/
public function testBuildIndex()
{
$data = array('PRIMARY' => array('column' => 'id'));
$result = $this->Dbo->buildIndex($data);
$expected = array('PRIMARY KEY (`id`)');
$this->assertSame($expected, $result);
$data = array('MyIndex' => array('column' => 'id', 'unique' => true));
$result = $this->Dbo->buildIndex($data);
$expected = array('UNIQUE KEY `MyIndex` (`id`)');
$this->assertEquals($expected, $result);
$data = array('MyIndex' => array('column' => array('id', 'name'), 'unique' => true));
$result = $this->Dbo->buildIndex($data);
$expected = array('UNIQUE KEY `MyIndex` (`id`, `name`)');
$this->assertEquals($expected, $result);
}
示例3: testBuildIndex
/**
* testBuildIndex method
*
* @return void
*/
public function testBuildIndex()
{
$indexes = array('PRIMARY' => array('column' => 'id', 'unique' => 1), 'client_id' => array('column' => 'client_id', 'unique' => 1));
$result = $this->db->buildIndex($indexes, 'items');
$expected = array('PRIMARY KEY ([id])', 'ALTER TABLE items ADD CONSTRAINT client_id UNIQUE([client_id]);');
$this->assertEquals($expected, $result);
$indexes = array('client_id' => array('column' => 'client_id'));
$result = $this->db->buildIndex($indexes, 'items');
$this->assertEquals($result, array());
$indexes = array('client_id' => array('column' => array('client_id', 'period_id'), 'unique' => 1));
$result = $this->db->buildIndex($indexes, 'items');
$expected = array('ALTER TABLE items ADD CONSTRAINT client_id UNIQUE([client_id], [period_id]);');
$this->assertEquals($expected, $result);
}