当前位置: 首页>>代码示例>>PHP>>正文


PHP Table::hasForeignKey方法代码示例

本文整理汇总了PHP中Doctrine\DBAL\Schema\Table::hasForeignKey方法的典型用法代码示例。如果您正苦于以下问题:PHP Table::hasForeignKey方法的具体用法?PHP Table::hasForeignKey怎么用?PHP Table::hasForeignKey使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Doctrine\DBAL\Schema\Table的用法示例。


在下文中一共展示了Table::hasForeignKey方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: foreign

 /**
  * Assert that the table has a foreign key relationship.
  *
  * @param  string $table
  * @param  string $column
  * @param  string $onUpdate
  * @param  string $onDelete
  * @return $this
  */
 public function foreign($table, $column = 'id', $onUpdate = 'cascade', $onDelete = 'cascade')
 {
     if (DB::connection() instanceof \Illuminate\Database\SQLiteConnection) {
         $this->context->markTestIncomplete('Foreign keys cannot be tested with a SQLite database.');
         return $this;
     }
     $name = $this->getIndexName('foreign');
     $this->assertTrue($this->table->hasForeignKey($name), "The foreign key {$name} does not exist.");
     $key = $this->table->getForeignKey($name);
     $onUpdate && $this->context->assertEquals(strtoupper($onUpdate), $key->onUpdate());
     $onDelete && $this->context->assertEquals(strtoupper($onDelete), $key->onDelete());
     $this->context->assertEquals($table, $key->getForeignTableName());
     $this->context->assertContains($column, $key->getForeignColumns());
     return $this;
 }
开发者ID:erikgall,项目名称:eloquent-phpunit,代码行数:24,代码来源:Column.php

示例2: testNormalizesColumnNames

 /**
  * @dataProvider getNormalizesAssetNames
  * @group DBAL-831
  */
 public function testNormalizesColumnNames($assetName)
 {
     $table = new Table('test');
     $table->addColumn($assetName, 'integer');
     $table->addIndex(array($assetName), $assetName);
     $table->addForeignKeyConstraint('test', array($assetName), array($assetName), array(), $assetName);
     $this->assertTrue($table->hasColumn($assetName));
     $this->assertTrue($table->hasColumn('foo'));
     $this->assertInstanceOf('Doctrine\\DBAL\\Schema\\Column', $table->getColumn($assetName));
     $this->assertInstanceOf('Doctrine\\DBAL\\Schema\\Column', $table->getColumn('foo'));
     $this->assertTrue($table->hasIndex($assetName));
     $this->assertTrue($table->hasIndex('foo'));
     $this->assertInstanceOf('Doctrine\\DBAL\\Schema\\Index', $table->getIndex($assetName));
     $this->assertInstanceOf('Doctrine\\DBAL\\Schema\\Index', $table->getIndex('foo'));
     $this->assertTrue($table->hasForeignKey($assetName));
     $this->assertTrue($table->hasForeignKey('foo'));
     $this->assertInstanceOf('Doctrine\\DBAL\\Schema\\ForeignKeyConstraint', $table->getForeignKey($assetName));
     $this->assertInstanceOf('Doctrine\\DBAL\\Schema\\ForeignKeyConstraint', $table->getForeignKey('foo'));
     $table->renameIndex($assetName, $assetName);
     $this->assertTrue($table->hasIndex($assetName));
     $this->assertTrue($table->hasIndex('foo'));
     $table->renameIndex($assetName, 'foo');
     $this->assertTrue($table->hasIndex($assetName));
     $this->assertTrue($table->hasIndex('foo'));
     $table->renameIndex('foo', $assetName);
     $this->assertTrue($table->hasIndex($assetName));
     $this->assertTrue($table->hasIndex('foo'));
     $table->renameIndex($assetName, 'bar');
     $this->assertFalse($table->hasIndex($assetName));
     $this->assertFalse($table->hasIndex('foo'));
     $this->assertTrue($table->hasIndex('bar'));
     $table->renameIndex('bar', $assetName);
     $table->dropColumn($assetName);
     $table->dropIndex($assetName);
     $table->removeForeignKey($assetName);
     $this->assertFalse($table->hasColumn($assetName));
     $this->assertFalse($table->hasColumn('foo'));
     $this->assertFalse($table->hasIndex($assetName));
     $this->assertFalse($table->hasIndex('foo'));
     $this->assertFalse($table->hasForeignKey($assetName));
     $this->assertFalse($table->hasForeignKey('foo'));
 }
开发者ID:selimcr,项目名称:servigases,代码行数:46,代码来源:TableTest.php


注:本文中的Doctrine\DBAL\Schema\Table::hasForeignKey方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。