2011-08-25 2 views
0

select() 테이블 이름을 지정하지 않고 하나의 열만 가져올 수 있습니다. 나는이 시도했다. (표 이름은 내 모델에 선언 된 $의 _name var에에) :젠드 프레임 워크 - Zend_db_table_abtract select()

$select->columns('field'); 

을 ... 그러나 나는 "어떤 테이블이 FROM 절에 지정되지 않은"의 오류 - 그래서 그것의 것 같습니다 테이블 이름을 기대합니다.

하나의 열만 가져 오는 방법이 있습니까?

+0

'$ select'는 어디에서 왔습니까? –

답변

1

클래스가 Zend_Db_Table_Abstract을 확장하는 경우 $this->fetchAll()을 사용할 수 있으므로 테이블 이름을 지정할 필요가 없습니다.

$_name을 이미 선언 했으므로 을 계속 사용하려면 $this->_name을 전달하십시오.

$this->select()->from($this->_name); 

select()

주로 선택 쿼리 객체를 생성하는 데 사용됩니다, 그래서 당신은 당신이 모델에서 비록 갈되는 테이블에서 추측 할 수 없다. 같은 테이블에 대한 쿼리가 아닐 수도 있습니다. 그래서 테이블 이름을 전달해야합니다. 자세한 내용은 http://framework.zend.com/manual/en/zend.db.select.html을 참조하십시오. 모두 다른 용도로 사용됩니다. 그래서 당신은 당신의 소원에 따라 사용하고 싶습니다.

+0

$ this -> _ fetch() 사용하기 어떻게 열 이름을 지정합니까? – Owen

+0

죄송합니다, 나는 테이블 이름없이 열 이름을 어떻게 지정합니까? – Owen

+0

모든 열을 가져옵니다. –

2

오류가 정확합니다. 입력란에서 원하는 표를 지정해야합니다.

$select->from('table_name', array('field'));