Как получить все столбцы таблицы, не определяя их в запросе? - PullRequest
1 голос
/ 23 августа 2011

У меня есть две таблицы: Пользователь и Компания .Я присоединяюсь к ним так:

   $table = $this->getDbTable();
   $select = $table->select();
   $select->setIntegrityCheck( false );

   $select->from( array('User'), array( 'id' => 'id',
                                        'name' => 'User.name',
                                        'gender' => 'User.gender', 
                                        'Company_id' => 'User.Company_id' 
                                      ));

   $select->join( 'Company', 'Company.id = User.Company_id', 
                   array( 'Company_name' => 'Company.name' ,
                          'Company_address' => 'Company.address'
                         ));  

   $rows = $table->fetchAll( $select );

Это работает и дает мне точный результат. Проблема в том, что я должен упомянуть имена столбцов в вышеприведенных кодах.Я хочу получить все столбцы, не упоминая их в приведенном выше фрагменте кода.

Например Я хочу что-то вроде этого, чтобы получить все столбцы (но он не предоставляет все значения столбцов):

   $table = $this->getDbTable();
   $select = $table->select();
   $select->setIntegrityCheck( false );
   $select->from( array('User') );
   $select->join( 'Company', 'Company.id = User.Company_id' );  
   $rows = $table->fetchAll( $select );

Спасибо

1 Ответ

2 голосов
/ 23 августа 2011

Если оставить второй параметр для вызова from, он должен работать: http://framework.zend.com/manual/en/zend.db.select.html#zend.db.select.building.columns

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...