2017-08-08 61 views
1

我是想增加價值,我用這個查詢枚舉:PostgreSQL枚舉時空

ALTER TYPE enum_missions_status ADD VALUE 'COMPLETED' 

與我的主表是廣告獲得成功,但是當我嘗試此查詢:

ALTER TYPE enum_historisationMissions_status ADD VALUE 'COMPLETED' 

我tempory表:https://wiki.postgresql.org/wiki/SQL2011Temporal

我有這個錯誤消息:

Unhandled rejection SequelizeBaseError: type "enum_historisationmissions_status" does not exist 

他將我的M修改爲m。

磨片我嘗試:

ALTER TYPE "enum_historisationMissions_status" ADD VALUE 'COMPLETED' 

我有這樣的錯誤:

Unhandled rejection SequelizeBaseError: type "enum_historisationmissions_status" does not exist 

如何添加枚舉態表?

回答

1

通常,SQL不區分大小寫。因此,enum_historisationMissions_statusenum_historisationmissions_status表示相同的對象。爲了避免這種行爲,你可以包含雙摺的名字,例如"enum_historisationMissions_status"命名帶有較低和較高字符的對象。

+1

要添加到此。 SQL標準規定未加引號的標識符會摺疊爲大寫。由於可讀性和歷史先例,PostgreSQL摺疊爲小寫。這兩種行爲在功能上非常相似。如果您通過引用不同的SQL兼容數據庫創建了一個對象:「MyTable」然後通過調用MyTable引用MYTABLE(或pgsql mytable)引用它,並且它不匹配。 一般要麼報價一切或沒有,你不會有這個問題在任何數據庫。 –