我想要一個java.util.UUID
映射到油滑列,它根據此有可能:https://github.com/slick/slick/issues/79油滑,UUID和Postgres
我定義如下的列:
def id = column[UUID]("id", O.PrimaryKey, O.DBType("UUID"))
根據上面鏈接的Github問題,手動DBType覆蓋不應該是必需的,但我無法讓它在沒有的情況下工作。
我得到當我試圖插入一行到Postgres的錯誤是這樣的:
org.postgresql.util.PSQLException:
ERROR: column "id" is of type uuid but expression is of type bytea
似乎從java.util.UUID
到一個Postgres uuid
類型的映射似乎並沒有工作。
我用下面的工件版本:
"com.typesafe.slick" %% "slick" % "2.0.1",
"org.slf4j" % "slf4j-nop" % "1.6.4",
"org.postgresql" % "postgresql" % "9.3-1101-jdbc41"
我的Postgres版本 $ PSQL --version PSQL(PostgreSQL的)9.3.3
我在做什麼錯?
你嘗試過'def id = column [UUID](「id」,O.PrimaryKey)'? – cvogt
是的,我做到了。如果我這樣做,Slick會嘗試將Postgres類型(在生成DDL期間)設置爲'OTHER'。 –
請注意,當您檢查PostgreSQL服務器版本時,應該使用'SELECT version();'查詢數據庫。 '$ psql --version'返回psql(客戶端應用程序)版本。這兩個可以不同。 – falconepl