如何在Zend框架中执行查询

时间:2011-09-27 07:54:47

标签: php zend-framework zend-form zend-db zend-db-table

感谢之前的回复

我执行"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);这个$ result是一个数组格式,我想得到的只是名字,而不是从中获取所有数据数据库。我是这个话题的新手。如果我犯了任何错误,请做正确的。

2 个答案:

答案 0 :(得分:2)

试试这个:

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

答案 1 :(得分:0)

  

此代码将通过 doctrine 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变量包含您希望与之进行比较的值,并且只保留您感兴趣的单个值。