getColumnMapFromSql() public method

returns detailed array with all columns for sql
public getColumnMapFromSql ( string $sql_query, array $view_columns = [] ) : array
$sql_query string target SQL query to get columns
$view_columns array alias for columns
return array
コード例 #1
0
 /**
  * Tests for DBI::getColumnMapFromSql() method.
  *
  * @return void
  * @test
  */
 public function testPMAGetColumnMap()
 {
     $extension = $this->getMockBuilder('PMA\\libraries\\dbi\\DBIDummy')->disableOriginalConstructor()->getMock();
     $extension->expects($this->any())->method('realQuery')->will($this->returnValue(true));
     $meta1 = new FieldMeta();
     $meta1->table = "meta1_table";
     $meta1->name = "meta1_name";
     $meta2 = new FieldMeta();
     $meta2->table = "meta2_table";
     $meta2->name = "meta2_name";
     $extension->expects($this->any())->method('getFieldsMeta')->will($this->returnValue(array($meta1, $meta2)));
     $dbi = new PMA\libraries\DatabaseInterface($extension);
     $sql_query = "PMA_sql_query";
     $view_columns = array("view_columns1", "view_columns2");
     $column_map = $dbi->getColumnMapFromSql($sql_query, $view_columns);
     $this->assertEquals(array('table_name' => 'meta1_table', 'refering_column' => 'meta1_name', 'real_column' => 'view_columns1'), $column_map[0]);
     $this->assertEquals(array('table_name' => 'meta2_table', 'refering_column' => 'meta2_name', 'real_column' => 'view_columns2'), $column_map[1]);
 }