ArBen
2015-02-11 16:30
@ORM\Table(name="order") 尝试着改成: @ORM\Table(name="`order`") 还是不行,不知道是不是没有clear cache,还是update没成功,在网上找了一些方法,一直没成功, 请老师指导。
不管是什么理由,我都非常不建议使用关键字作为表名,虽然你可以通过一些特殊的语法绕过去,但不管将来实际操作数据库的时候还是牵涉到运维和后续开发,你任何对这个表的操作都要额外做这么一个处理,事实上是很麻烦的事情。
我给你出两个方案
改名叫orders
使用prefix table name,比如xxx_order这样,如果想在所有表上都实现prefix而不是一个一个改,具体做法可以参考:http://stackoverflow.com/questions/7504073/how-to-setup-table-prefix-in-symfony2
补充一下,我是用:
doctrine:mapping:import
生成xml文件后,再用:
generate:doctrine:entities
生成的Entity文件,然后其中的一个table name=order
项目已存在的order表名,不好随便改名,所以我就想到一办法把Entity更改成:
@ORM\Table(name="`order`")
但错误提示还是显示order sql 语法错误,没有生效成`order`,
是要清缓存,还是怎么操作,我都尝试过几次,还是没有解决。求解?
洪大师带你解读Symfony 2框架
20604 学习 · 245 问题
相似问题