haskell GHC。执行sqlite3触发器时exe崩溃

haskell GHC。执行sqlite3触发器时exe崩溃,haskell,triggers,sqlite,crash,ghci,Haskell,Triggers,Sqlite,Crash,Ghci,我已经编写了以下触发器。当我执行它时,ghc。exe崩溃 它说ghc.exe已经停止工作。windows目前正在寻找此问题的解决方案。这是我从未经历过的事情 calculateNoOfStocksTraded ::String->Database.HDBC.Sqlite3.Connection->IO () calculateNoOfStocksTraded code conn=do res <- quickQuer

我已经编写了以下触发器。当我执行它时,ghc。exe崩溃

它说ghc.exe已经停止工作。windows目前正在寻找此问题的解决方案。这是我从未经历过的事情

calculateNoOfStocksTraded ::String->Database.HDBC.Sqlite3.Connection->IO ()
calculateNoOfStocksTraded code conn=do                             
  res <- quickQuery' conn  "SELECT SUM(volume) FROM historicalData WHERE companyCode = ? " [toSql code]
  let conv=convertSqlValToInt res

  run conn "CREATE TRIGGER calStocks \
           \AFTER INSERT ON historicalData \
           \FOR EACH ROW \
           \BEGIN \
           \UPDATE company \
           \SET noOfStocks= ? ; \
           \END; " [toSql (conv::Integer)]

  commit conn

1.在向stackoverflow 2发布时,格式化代码始终是一个好主意。库名称/版本这是关于HDBC Haskell数据库连接和Sqlite3的。如果我的回答不清楚,我很抱歉。因为我对Haskell和Sqlite非常陌生。如果我像下面这样运行conn CREATE TRIGGER calStocks\\AFTER INSERT ON historicalData\\FOR EACH ROW\\BEGIN\\UPDATE company\\SET noOfStocks=3456789123456?;\\终止[]然后它就工作了。但那不是我想要的。我必须将它与变量conv中的值进行比较