Haskell &引用;可转换SqlValue UTCTime“;丢失的

Haskell &引用;可转换SqlValue UTCTime“;丢失的,haskell,hdbc,Haskell,Hdbc,我试图将SqlValue转换为UTCTime,如下所示: import Database.HDBC import Data.Time (UTCTime) getUTCTimeFromSql :: SqlValue -> UTCTime getUTCTimeFromSql time = fromSql time :: UTCTime 当我查看时,UTCTime的实例就在那里 我遗漏了什么吗?请参考以获得答案 我怀疑您的HDBC(和敞篷车)是根据 与您使用的时间版本不同。所以有一个例子 适用于旧时

我试图将
SqlValue
转换为
UTCTime
,如下所示:

import Database.HDBC import Data.Time (UTCTime) getUTCTimeFromSql :: SqlValue -> UTCTime getUTCTimeFromSql time = fromSql time :: UTCTime 当我查看时,
UTCTime
的实例就在那里

我遗漏了什么吗?

请参考以获得答案

我怀疑您的HDBC(和敞篷车)是根据 与您使用的时间版本不同。所以有一个例子 适用于旧时间包的UTCTime,但不适用于中的类型 更新的。ghc pkg列表时间报告是否安装了多个 版本


我可以使用HDBC-2.3.1.2和convertible-1.0.11.1成功地将代码段加载到GHCi(7.4.2)。您使用的是什么版本?我怀疑您的
HDBC
(和
convertible
)是根据与您使用的
time
不同的版本构建的。因此,较旧的
time
包的
UTCTime
有一个实例,但较新包的类型没有。
ghc pkg是否列出了时间
报告了多个已安装版本?丹尼尔,是的,确实是这个原因。我有两个版本的时间注册,所以我删除了一个,重新安装了一些软件包,它的工作! No instance for (Data.Convertible.Base.Convertible SqlValue UTCTime) arising from a use of `fromSql' Possible fix: add an instance declaration for (Data.Convertible.Base.Convertible SqlValue UTCTime) In the expression: fromSql time :: UTCTime In an equation for `getUTCTimeFromSql': getUTCTimeFromSql time = fromSql time :: UTCTime