1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
|
Quick install:
./configure
make
make install
Install from CVS:
autoconf
./configure
make
make install
Building RPM-package:
rpmbuild -ta haskelldb-....tar.gz
Requirements:
- GHC 6.2 or 6.2.1 (if you want GHC support)
- GNU Make
- Hugs November 2003 (if you want Hugs support)
A database driver, at least one of:
- HSQL (http://htoolkit.sourceforge.net/)
It is preferrable to have HSQL installed
in the GHC and Hugs library directories.
When building HSQL, remember to enable all drivers that you are
going to use. Example of building and installing HSQL :
$ ./configure --enable-odbc --enable-mysql --enable-postgres
$ make
$ make install
* Extra requirements for Windows
- Cygwin (found at www.cygwin.com)
Except the default packages you will also need Make and GCC
- Microsoft Data Access Components (MDAC) SDK (found at
http://www.msdn.com/download)
- wxHaskell (http://wxhaskell.sourceforge.net/)
wxHaskell's database support requires wxWidgets built with ODBC
support, which is not enabled by default.
Database support:
- HSQL ODBC
HaskellDB should work with all ODBC drivers, assuming that the database
supports the queries generated by HaskellDB. This does for exaemple
currently not include the stable version of MySQL, see below.
- HSQL MySQL
HaskellDB only works with MySQL version >= 4.1 since earlier
versions don't support nested subqueries.
It is currently not possible to build HSQL's MySQL support under
Windows. If you figure it out, let us know.
MySQL only supports transactions on transaction-safe table types,
such as InnoDB and BDB. The default table type, MyISAM, does not
support transactions. See the MySQL manual for more information.
MySQL 4.1 does not support intersect.
- HSQL PostgreSQL
Works.
- HSQL SQLite
Works, but since SQLite is untyped, DBDirect reports the types of
all columns in SQLite databases as String, even if some other type
was used when the table was created. To work around this, create the
database description modules using
Database.HaskellDB.DBSpec.DBSpecToDBDirect.dbInfoToModuleFiles
There are some problems with escaping of certain characters
(whitspace and backslash) for SQLite, sicne SQLite does not expect
them to be escaped.
- wxHaskell
Works only with GHC. Does not work with MySQL as far as we know.
|