我正在使用symfony和doctrine,我试图从db生成架构yml文件。我收到了这个错误
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to
your MySQL server version for the right syntax to use near 'group' at line 1. Failing Query: "DESCRIBE group"I have a table named group in my database, and I suspect that this is screwing it up.
它没有访问问题,因为我检查了我的数据库优先级。关于我能做什么的任何建议?我试过了quote-identifier属性,但没有运气:(
我也在努力寻找一些好的学说文档。我似乎无法找到属性列表的位置,比如在schema.yml文件中创建一个列。我试图联系symfony论坛,但他们没有回应!任何帮助将不胜感激!感谢..
答案 0 :(得分:3)
如上所述,group
是MySQL中的保留关键字,因此您需要转义其名称。在项目配置类(/config/ProjectConfiguration.class.php
)中,将Doctrine Manager配置为使用引号:
class ProjectConfiguration extends sfProjectConfiguration {
public function setup() {
//...
}
public function configureDoctrine(Doctrine_Manager $manager) {
$manager->setAttribute(Doctrine_Core::ATTR_QUOTE_IDENTIFIER, true);
}
}
答案 1 :(得分:1)
假设您使用的是最新的MySQL,“group”是一个保留字: