MSSQL 데이터베이스에서 쿼리를 작성하고 레코드를 가져 오려고합니다. 내가 쿼리 문자열을 준비하는 YII의 \ DB를 \ 쿼리 객체를 생성 : 그 후Yii 2 MSSQL QueryBuilder
$query = new Query;
$query->select(['Name', 'PositionX', 'PositionY'])
->from('mydb.dbo.position')
->addOrderBy('PositionX DESC')
->limit(100);
을, 나는 YII \ DB를 \ 경우 MSSQL에 쿼리 객체를 추가 \ QueryBuilder
$qb = new QueryBuilder(\Yii::$app->db_mssql);
$qb->build($query);
지금은 같은 기록을 가져 오기 위해 필요 모델 예 :
$result = Position::findAll($qb);
하지만 findAll()
던져 오류 :
Exception 'yii\db\Exception' with message 'Object of class yii\db\mssql\QueryBuilder could not be converted to string Failed to prepare SQL: SELECT * FROM [mydb].[dbo].[position] WHERE [Name]=:qp0'
어떻게해야합니까? :)
간편한 쿼리 작성을 위해 find (http://www.bsourcecode.com/yiiframework2/select-query-model/) 메서드를 사용하십시오. –