Hi,<br><br>I was also wandering between these different db-libs and thanks for your information.<br><br>I tried several (HDBC, HSQL, HaskellDB) and made only small trials. <br>HaskellDB has quite many examples on wiki that gave a quick start to further trials.
<br>But, I wasn&#39;t able to tell that some of the fields have default values and then it<br>was already time to move on to the HSQL and HDBC trials. <br><br>Is it possible to use sql-array-types with HDBC with postgresql? I don&#39;t remember was this the
<br>reason why I eventually tried HSQL - anyhow, it was rather difficult to get started with HDBC<br>but the src test cases helped here. One example in a wiki would do miracles :)<br><br>HSQL didn&#39;t have the array-types but it took only couple of hours to add &quot;a sort of&quot; support
<br>for those. There are some problems though... (indexed table queries returning some nulls<br>is not yet working and ghci seems to be allergic to this)&nbsp; I was even wondering, should I propose<br>a patch in some near future for this.
<br><br>But if HDBC can handle those sql-arrays or if you can give a couple of hints, how to proceed<br>in order to add them there, given your view below, I&#39;d be willing to try to help / to try to use HDBC.<br><br>br,
<br>Isto<br><br><div><span class="gmail_quote">2007/7/30, John Goerzen &lt;<a href="mailto:jgoerzen@complete.org">jgoerzen@complete.org</a>&gt;:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On 2007-07-25, George Moschovitis &lt;<a href="mailto:george.moschovitis@gmail.com">george.moschovitis@gmail.com</a>&gt; wrote:<br>&gt; I am a Haskell newbie and I would like to hear your suggestions regarding a<br>&gt; Database conectivity library:
<br>&gt;<br>&gt; HSQL or HDBC ?<br>&gt;<br>&gt; which one is better / more actively supported?<br><br>I am the author of HDBC, so take this for what you will.<br><br>There were several things that bugged me about HSQL, if memory serves:
<br><br> 1) It segfaulted periodically, at least with PostgreSQL<br><br> 2) It had memory leaks<br><br> 3) It couldn&#39;t read the result set incrementally.&nbsp;&nbsp;That means that if<br> you have a 2GB result set, you better have 8GB of RAM to hold it.
<br><br> 4) It couldn&#39;t reference colums in the result set by position, only by<br> name<br><br> 5) It didn&#39;t support pre-compiled queries (replacable parameters)<br><br> 6) Its transaction handling didn&#39;t permit enough flexibility
<br><br>I initially looked at fixing HSQL, but decided it would be easier to<br>actually write my own interface from scratch.<br><br>HDBC is patterned loosely after Perl&#39;s DBI, with a few thoughts from<br>Java&#39;s JDBC, Python&#39;s DB-API, and HSQL mixed in.
<br><br>I believe it has fixed all of the above issues.&nbsp;&nbsp;The HDBC backends that<br>I&#39;ve written (Sqlite3, PostgreSQL, and ODBC) all use Haskell&#39;s C memory<br>management tools, which *should* ensure that there is no memory leakage.
<br><br>I use it for production purposes in various applications at work,<br>connecting to both Free and proprietary databases.&nbsp;&nbsp;I also use it in my<br>personal projects.&nbsp;&nbsp;hpodder, for instance, stores podcast information in
<br>a Sqlite3 database accessed via HDBC.&nbsp;&nbsp;I have found HDBC+Sqlite3 to be a<br>particularly potent combination for a number of smaller projects.<br><br><a href="http://software.complete.org/hdbc/wiki/HdbcUsers">http://software.complete.org/hdbc/wiki/HdbcUsers
</a> has a list of some<br>programs that are known to use HDBC.&nbsp;&nbsp;Feel free to add yours to it.<br><br>-- John<br><br>_______________________________________________<br>Haskell-Cafe mailing list<br><a href="mailto:Haskell-Cafe@haskell.org">
Haskell-Cafe@haskell.org</a><br><a href="http://www.haskell.org/mailman/listinfo/haskell-cafe">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br></blockquote></div><br><br clear="all"><br>-- <br>br,<br>Isto