2011-09-27 98 views
1

感谢之前的回复如何在Zend框架中执行查询

我正在执行"select Name from table_name where id=1";。我看到了一些从数据库获取数据的教程,他们提到了$DB = new Zend_Db_Adapter_Pdo_Mysql($params); DB->setFetchMode(Zend_Db::FETCH_OBJ);,结果将通过$result = $DB->fetchAssoc($sql);这$结果是一种数组格式,我想只获取名称而不是从数据库获取所有数据。我是这个主题的新手。如果我犯了任何错误,请务必纠正。

回答

2

试试这个:

$result = $DB->fetchOne("SELECT name FROM table_name WHERE id=1"); 
0

此代码将通过学说getServiceLocator()执行查询。在createQueryBuilder()的帮助下,您可以直接将查询写入zend-framework2,并使用setParameter,可以轻松设置任何所需的条件。

$entityManager = $this->getServiceLocator()->get('doctrine.entitymanager.orm_default'); 
       $qb = $entityManager->createQueryBuilder(); 
       $qb->select(array(
        'TableName.columnName as columnName ' 


       )) 
        ->from('ProjectName\Entity\TableName', 'TableName') 
        ->where('TableName.TableId = :Info') 
        ->setParameter('Info', $id); 
       $var= $qb->getQuery()->getScalarResult(); 

$var变量保存了其价值,你想与进行比较,并只保存你感兴趣的单值。