Entity table name 用到了預留關鍵字
@ORM\Table(name="order") 嘗試著改成: @ORM\Table(name="`order`") 還是不行,不知道是不是沒有clear?cache,還是update沒成功,在網上找了一些方法,一直沒成功, 請老師指導。
@ORM\Table(name="order") 嘗試著改成: @ORM\Table(name="`order`") 還是不行,不知道是不是沒有clear?cache,還是update沒成功,在網上找了一些方法,一直沒成功, 請老師指導。
2015-02-11
舉報
2015-02-11
不管是什么理由,我都非常不建議使用關鍵字作為表名,雖然你可以通過一些特殊的語法繞過去,但不管將來實際操作數據庫的時候還是牽涉到運維和后續開發,你任何對這個表的操作都要額外做這么一個處理,事實上是很麻煩的事情。
我給你出兩個方案
改名叫orders
使用prefix table name,比如xxx_order這樣,如果想在所有表上都實現prefix而不是一個一個改,具體做法可以參考:http://stackoverflow.com/questions/7504073/how-to-setup-table-prefix-in-symfony2
2015-02-11
補充一下,我是用:
生成xml文件后,再用:
生成的Entity文件,然后其中的一個table name=order
項目已存在的order表名,不好隨便改名,所以我就想到一辦法把Entity更改成:
但錯誤提示還是顯示order sql 語法錯誤,沒有生效成`order`,
是要清緩存,還是怎么操作,我都嘗試過幾次,還是沒有解決。求解?