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


PHP Schema::visit方法代码示例

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


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

示例1: testCleanupForeignKeysDifferentOrder

 /**
  * @group DBAL-204
  */
 public function testCleanupForeignKeysDifferentOrder()
 {
     $config = new SchemaConfig();
     $config->setName("test");
     $schema = new Schema(array(), array(), $config);
     $testTable = $schema->createTable("test.test");
     $testTable->addColumn('id', 'integer');
     $fooTable = $schema->createTable("foo.bar");
     $fooTable->addColumn('id', 'integer');
     $testTable->addForeignKeyConstraint("foo.bar", array("id"), array("id"));
     $schema->visit(new RemoveNamespacedAssets());
     $sql = $schema->toSql(new MySqlPlatform());
     $this->assertEquals(1, count($sql), "Just one CREATE TABLE statement, no foreign key and table to foo.bar");
 }
开发者ID:Werelds,项目名称:FrameworkBenchmarks,代码行数:17,代码来源:RemoveNamespacedAssetsTest.php

示例2: testMultiTenantNonPrimaryKey

 public function testMultiTenantNonPrimaryKey()
 {
     $platform = new SQLAzurePlatform();
     $visitor = new MultiTenantVisitor();
     $schema = new Schema();
     $foo = $schema->createTable('foo');
     $foo->addColumn('id', 'string');
     $foo->addColumn('created', 'datetime');
     $foo->setPrimaryKey(array('id'));
     $foo->addIndex(array('created'), 'idx');
     $foo->getPrimaryKey()->addFlag('nonclustered');
     $foo->getIndex('idx')->addFlag('clustered');
     $schema->visit($visitor);
     $this->assertEquals(array('id'), $foo->getPrimaryKey()->getColumns());
     $this->assertTrue($foo->hasColumn('tenant_id'));
     $this->assertEquals(array('created', 'tenant_id'), $foo->getIndex('idx')->getColumns());
 }
开发者ID:doctrine,项目名称:shards,代码行数:17,代码来源:MultiTenantVisitorTest.php

示例3: dumpPhpSchema

 /**
  * @param Schema          $schema
  * @param OutputInterface $output
  */
 protected function dumpPhpSchema(Schema $schema, OutputInterface $output)
 {
     $visitor = $this->getContainer()->get('oro_migration.tools.schema_dumper');
     $schema->visit($visitor);
     $output->writeln($visitor->dump($this->allowedTables, $this->namespace, $this->className, $this->version, $this->extendedFieldOptions));
 }
开发者ID:Maksold,项目名称:platform,代码行数:10,代码来源:DumpMigrationsCommand.php

示例4: testFixSchema_AddExplicitIndexForForeignKey

 public function testFixSchema_AddExplicitIndexForForeignKey()
 {
     $schema = new Schema();
     $tableA = $schema->createTable('foo');
     $tableA->addColumn('id', 'integer');
     $tableB = $schema->createTable('bar');
     $tableB->addColumn('id', 'integer');
     $tableB->addColumn('foo_id', 'integer');
     $tableB->addForeignKeyConstraint($tableA, array('foo_id'), array('id'));
     $this->assertEquals(0, count($tableB->getIndexes()));
     $schema->visit(new \Doctrine\DBAL\Schema\Visitor\FixSchema(true));
     $this->assertEquals(1, count($tableB->getIndexes()));
     $indexes = $tableB->getIndexes();
     $index = current($indexes);
     $this->assertTrue($index->hasColumnAtPosition('foo_id', 0));
 }
开发者ID:jacques-sounvi,项目名称:addressbook,代码行数:16,代码来源:SchemaTest.php


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