36 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| declare(strict_types=1);
 | |
| 
 | |
| use Phinx\Migration\AbstractMigration;
 | |
| 
 | |
| final class AddTestsTable extends AbstractMigration
 | |
| {
 | |
|     /**
 | |
|      * Change Method.
 | |
|      *
 | |
|      * Write your reversible migrations using this method.
 | |
|      *
 | |
|      * More information on writing migrations is available here:
 | |
|      * https://book.cakephp.org/phinx/0/en/migrations.html#the-change-method
 | |
|      *
 | |
|      * Remember to call "create()" or "update()" and NOT "save()" when working
 | |
|      * with the Table class.
 | |
|      */
 | |
|     public function change()
 | |
|     {
 | |
|         $table = $this->table('tests');
 | |
|         $table->addColumn('date_tag', 'string', ['null' => false])
 | |
|             ->addColumn('benchmark_id', 'integer', ['null' => false])
 | |
|             ->addColumn('component_id', 'integer', ['null' => false])
 | |
|             ->addForeignKey('benchmark_id', 'benchmarks', 'id', ['delete'=> 'CASCADE', 'update'=> 'CASCADE'])
 | |
|             ->addForeignKey('component_id', 'components', 'id', ['delete'=> 'CASCADE', 'update'=> 'CASCADE'])
 | |
|             ->addTimestamps()
 | |
|             ->create();
 | |
| 
 | |
|         $results = $this->table('results');
 | |
|         $results->addColumn('test_id', 'integer', ['null' => false])
 | |
|             ->addForeignKey('test_id', 'tests', 'id', ['delete'=> 'CASCADE', 'update'=> 'CASCADE'])
 | |
|             ->update();
 | |
|     }
 | |
| }
 |