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