Zendframework 2에서 새로운 기능입니다. 두 테이블을 결합하여 결과를 표시하려고합니다.ZendFramework 2 : 구문 오류 또는 액세스 위반 : 1066 고유하지 않은 테이블/별칭 :
두 개의 표가 있습니다. 작품 및 아티스트 표는 artist_id를 기준으로 조인됩니다. WorksTable에서
STEP 1> 등재 2 개 클래스 (서지, 아티스트) 모델 STEP 2> I는 I는 다음과 같은 코드를 정의 제어부에서 다음 코드
class WorksTable extends AbstractTableGateway
{
protected $table ='works';
public function __construct(Adapter $adapter)
{
$this->adapter = $adapter;
$this->resultSetPrototype = new HydratingResultSet(
new ArraySerializableHydrator(),
new Works()
);
$this->resultSetPrototype->buffer();
$this->initialize();
}
public function fetchAll()
{
$select = $this->getSql()->select();
$select->join('works','artists.artist_id = artist_id ');
//create paginator object to display records
$paginator = new Paginator(
new DbSelect($select, $this->adapter, $this->resultSetPrototype)
);
return $paginator;
}
}
STEP 3>이
public function searchAction()
{
$request = $this->getRequest();
$paginator = $this->getWorksTable()->fetchAll();
// $paginator->setItemCountPerPage(12);
$vm = new ViewModel(array(
'poster' => $paginator,
));
$vm->setVariable('paginator', $paginator);
return $vm;
}
문장 용 $ paginator-> setItemCountPerPage (12);
이SQLSTATE[42000]: Syntax error or access violation: 1066 Not unique table/alias: 'works'
사람이 에러를 본적이 있습니다 :
메시지 오류 얻을? 이 문제를 해결하는 방법에 대한 아이디어가 있습니까?