简体   繁体   English

与HaskellDB.HDBC.Odbc建立连接

[英]Build connection with HaskellDB.HDBC.Odbc

I'm new to Haskell. 我是Haskell的新手。 I've read most of LYAH and RWH and have also done some small programms. 我已经阅读了大部分LYAH和RWH,并且还做了一些小程序。 No I would like to use Haskell with an Oracle DB. 不,我想将Haskell与Oracle DB一起使用。 I would like to use HaskellDB with HDBC.ODBC. 我想将HaskellDB与HDBC.ODBC一起使用。

I was able to connect to the DB via HDBC and run a query. 我能够通过HDBC连接到数据库并运行查询。 But I don't know how to connect via HaskellDB and ODBC. 但是我不知道如何通过HaskellDB和ODBC进行连接。 I can't find an example. 我找不到一个例子。

You connect with the odbcConnect function in the [haskelldb-hdbc-opbc][1] package. 您可以使用[haskelldb-hdbc-opbc][1]包中的odbcConnect函数进行连接。

Here is at its source: 这是其来源:

odbcConnect :: MonadIO m => SqlGenerator -> [(String,String)] -> (Database -> m a) -> m a
odbcConnect gen opts = hdbcConnect gen (connectODBC conninfo)
    -- strangely enough, mysql+unixodbc want a semicolon terminating connstring
    where conninfo = foldr (\(k,v) z -> k ++ "=" ++ v ++ ";" ++ z) [] opts

There we can see that it calls out to connectODBC which you know how to use already. 在那里,我们可以看到它调用了connectODBC ,您已经知道如何使用它。 The difference is that here we take a list of pairs of (OptionName,OptionValue) rather than a simple string, and those options get rendered as key=value; 不同之处在于,这里我们采用(OptionName,OptionValue)对列表,而不是简单的字符串,并且这些选项被呈现为key=value; pairs in the connection string passed to connectODBC . 传递给connectODBC的连接字符串中的对。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM