本文整理汇总了PHP中Doctrine\DBAL\Schema\Sequence类的典型用法代码示例。如果您正苦于以下问题:PHP Sequence类的具体用法?PHP Sequence怎么用?PHP Sequence使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Sequence类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testIsAutoincrementFor
/**
* @group DDC-1657
*/
public function testIsAutoincrementFor()
{
$table = new Table("foo");
$table->addColumn("id", "integer", array("autoincrement" => true));
$table->setPrimaryKey(array("id"));
$sequence = new Sequence("foo_id_seq");
$sequence2 = new Sequence("bar_id_seq");
$sequence3 = new Sequence("other.foo_id_seq");
$this->assertTrue($sequence->isAutoIncrementsFor($table));
$this->assertFalse($sequence2->isAutoIncrementsFor($table));
$this->assertFalse($sequence3->isAutoIncrementsFor($table));
}
示例2: getSequenceCacheSQL
/**
* Cache definition for sequences
*
* @param Sequence $sequence
*
* @return string
*/
private function getSequenceCacheSQL(Sequence $sequence)
{
if ($sequence->getCache() > 1) {
return ' CACHE ' . $sequence->getCache();
}
return '';
}
示例3: _addSequence
/**
* @param \Doctrine\DBAL\Schema\Sequence $sequence
*
* @return void
*
* @throws \Doctrine\DBAL\Schema\SchemaException
*/
protected function _addSequence(Sequence $sequence)
{
$seqName = $sequence->getFullQualifiedName($this->getName());
if (isset($this->_sequences[$seqName])) {
throw SchemaException::sequenceAlreadyExists($seqName);
}
$this->_sequences[$seqName] = $sequence;
}
示例4: dropAndCreateSequence
/**
* Drops and create a new sequence.
*
* @param \Doctrine\DBAL\Schema\Sequence $sequence
*
* @return void
*
* @throws \Doctrine\DBAL\ConnectionException If something fails at database level.
*/
public function dropAndCreateSequence(Sequence $sequence)
{
$this->tryMethod('dropSequence', $sequence->getQuotedName($this->_platform));
$this->createSequence($sequence);
}
示例5: getSequenceCacheSQL
/**
* Cache definition for sequences
*
* @param Sequence $sequence
*
* @return string
*/
private function getSequenceCacheSQL(Sequence $sequence)
{
if ($sequence->getCache() === 0) {
return ' NOCACHE';
} else {
if ($sequence->getCache() === 1) {
return ' NOCACHE';
} else {
if ($sequence->getCache() > 1) {
return ' CACHE ' . $sequence->getCache();
}
}
}
return '';
}
示例6: diffSequence
/**
* @param \Doctrine\DBAL\Schema\Sequence $sequence1
* @param \Doctrine\DBAL\Schema\Sequence $sequence2
*
* @return boolean
*/
public function diffSequence(Sequence $sequence1, Sequence $sequence2)
{
if ($sequence1->getAllocationSize() != $sequence2->getAllocationSize()) {
return true;
}
if ($sequence1->getInitialValue() != $sequence2->getInitialValue()) {
return true;
}
return false;
}
示例7: isAutoIncrementSequenceInSchema
/**
* @param \Doctrine\DBAL\Schema\Schema $schema
* @param \Doctrine\DBAL\Schema\Sequence $sequence
*
* @return boolean
*/
private function isAutoIncrementSequenceInSchema($schema, $sequence)
{
foreach ($schema->getTables() as $table) {
if ($sequence->isAutoIncrementsFor($table)) {
return true;
}
}
return false;
}
示例8: acceptSequence
/**
* @param Sequence $sequence
*/
public function acceptSequence(Sequence $sequence)
{
$this->_sequences[] = $this->_platform->getDropSequenceSQL($sequence->getQuotedName($this->_platform));
}
开发者ID:MarS2806,项目名称:Zend-Framework--Doctrine-ORM--PHPUnit--Ant--Jenkins-CI--TDD-,代码行数:7,代码来源:DropSchemaSqlCollector.php
示例9: testReturnsSequenceSQL
public function testReturnsSequenceSQL()
{
$sequence = new Sequence('test_seq', 1, 10);
$this->assertEquals('CREATE SEQUENCE ' . $sequence->getQuotedName($this->_platform) . ' START WITH ' . $sequence->getInitialValue() . ' INCREMENT BY ' . $sequence->getAllocationSize() . ' MINVALUE ' . $sequence->getInitialValue(), $this->_platform->getCreateSequenceSQL($sequence));
$this->assertEquals('ALTER SEQUENCE ' . $sequence->getQuotedName($this->_platform) . ' INCREMENT BY ' . $sequence->getAllocationSize(), $this->_platform->getAlterSequenceSQL($sequence));
$this->assertEquals('DROP SEQUENCE ' . $sequence->getName(), $this->_platform->getDropSequenceSQL($sequence));
$this->assertEquals('DROP SEQUENCE ' . $sequence->getName(), $this->_platform->getDropSequenceSQL($sequence->getName()));
}
示例10: acceptSequence
/**
* {@inheritdoc}
*/
public function acceptSequence(Sequence $sequence)
{
if (!$sequence->isInDefaultNamespace($this->schema->getName())) {
$this->schema->dropSequence($sequence->getName());
}
}
示例11: _addSequence
/**
* @param \Doctrine\DBAL\Schema\Sequence $sequence
*
* @return void
*
* @throws \Doctrine\DBAL\Schema\SchemaException
*/
protected function _addSequence(Sequence $sequence)
{
$namespaceName = $sequence->getNamespaceName();
$seqName = $sequence->getFullQualifiedName($this->getName());
if (isset($this->_sequences[$seqName])) {
throw SchemaException::sequenceAlreadyExists($seqName);
}
if (!$sequence->isInDefaultNamespace($this->getName()) && !$this->hasNamespace($namespaceName)) {
$this->createNamespace($namespaceName);
}
$this->_sequences[$seqName] = $sequence;
}
示例12: acceptSequence
/**
* @param Sequence $sequence
*/
public function acceptSequence(Sequence $sequence)
{
$this->_sequences[] = $this->_platform->getDropSequenceSql($sequence->getName());
}
示例13: getCreateSequenceSQL
/**
* {@inheritDoc}
*
* Need to specifiy minvalue, since start with is hidden in the system and MINVALUE <= START WITH.
* Therefore we can use MINVALUE to be able to get a hint what START WITH was for later introspection
* in {@see listSequences()}
*/
public function getCreateSequenceSQL(Sequence $sequence)
{
return 'CREATE SEQUENCE ' . $sequence->getQuotedName($this) . ' START WITH ' . $sequence->getInitialValue() . ' MINVALUE ' . $sequence->getInitialValue() . ' INCREMENT BY ' . $sequence->getAllocationSize() . $this->getSequenceCacheSQL($sequence);
}
示例14: getAlterSequenceSQL
/**
* {@inheritDoc}
*/
public function getAlterSequenceSQL(Sequence $sequence)
{
return 'ALTER SEQUENCE ' . $sequence->getQuotedName($this) . ' INCREMENT BY ' . $sequence->getAllocationSize() . $this->getSequenceCacheSQL($sequence);
}
示例15: getAlterSequenceSQL
public function getAlterSequenceSQL(\Doctrine\DBAL\Schema\Sequence $sequence)
{
return 'ALTER SEQUENCE ' . $sequence->getQuotedName($this) . ' INCREMENT BY ' . $sequence->getAllocationSize();
}