HDBC provides an abstraction layer between Haskell programs and SQL
relational databases. This lets you write database code once, in
Haskell, and have it work with any number of backend SQL databases
(MySQL, Oracle, PostgreSQL, ODBC-compliant databases, etc.)
HDBC is modeled loosely on Perl's DBI interface, though it has also been
influenced by Python's DB-API v2, JDBC in Java, and HSQL in Haskell.