Doctrine2 SQLSTATE [42000]:语法错误或访问冲突:1064

 Quiet静以修身 发布于 2023-02-07 20:35

user.php的;



LikePage.php;



LikeArticle.php;

namespace Acme\DemoBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity
 * @ORM\Table(name="like_article")
 */
class LikePage extends Like
{
    /**
     * @ORM\Column(type="integer")
     */
    protected $itemid;

   /**
     * @ORM\ManyToOne(targetEntity="Article", inversedBy="likes")
     * @ORM\JoinColumn(name="itemid", referencedColumnName="id")
     */
    protected $article;

我以这种方式向数据库添加数据.我正在尝试从Page Entity中检索数据.但是,执行此时;

$likes = $page->getLikes();
foreach($likes as $like) {

}

我收到这个错误;

An exception occurred while executing 'SELECT t0.id AS id1, t0.userid AS userid2, t0.itemid AS itemid3, t0.userid AS userid4, t0.itemid AS itemid5, t0.itemtype FROM like t0 WHERE t0.itemid = ? AND t0.itemtype IN ('1')' with params [1]:

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'like t0 WHERE t0.itemid = '1' AND t0.itemtype IN ('1')' at line 1

在这种情况下,我该怎么办?为什么找不到itemid?

1 个回答
  • 喜欢是一个保留字,逃避它或更好地改变你的表名.

    文件

    将其更改为

    * @ORM\Table(name="`like`")
    

    2023-02-07 20:39 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有