Skip to content
This repository
branch: master
Fetching contributors…

Octocat-spinner-32-eaf2f5

Cannot retrieve contributors at this time

file 139 lines (91 sloc) 3.312 kb
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 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138
Installation with Cabal:

NOTE: you may need to upgrade Cabal to get this to work.

- Install the main package (haskelldb):

runghc Setup.hs configure
runghc Setup.hs build
runghc Setup.hs install

- Install the hs-plugins backend which loads drivers
  dynamically (requires at least the current, as of
  2005-12-09, darcs version of hs-plugins).

  This also compiles and installs DBDirect.

cd driver-dynamic
runghc Setup.hs configure
runghc Setup.hs build
runghc Setup.hs install
cd ..

- Install HSQL drivers (you need driver-hsql and
  the backends you want to use):

cd driver-hsql
runghc Setup.hs configure
runghc Setup.hs build
runghc Setup.hs install
cd ..

cd driver-hsql-mysql
runghc Setup.hs configure
runghc Setup.hs build
runghc Setup.hs install
cd ..

cd driver-hsql-postgresql
runghc Setup.hs configure
runghc Setup.hs build
runghc Setup.hs install
cd ..

cd driver-hsql-odbc
runghc Setup.hs configure
runghc Setup.hs build
runghc Setup.hs install
cd ..

cd driver-hsql-sqlite
runghc Setup.hs configure
runghc Setup.hs build
runghc Setup.hs install
cd ..

- Install the WXHaskell driver:

cd driver-wx
runghc Setup.hs configure
runghc Setup.hs build
runghc Setup.hs install
cd ..




Requirements:

- GHC 6.4 or newer

- A recent verion of Cabal (newer than that which comes with GHC 6.4[.1],
  I'm not sure about the exact version requirement).

- Hugs ??? HaskellDB used to work with Hugs, does it still?


A database driver, at least one of:

- HSQL (http://htoolkit.sourceforge.net/), version 1.7 or later.

  Use Cabal to install the HSQL backends that you want to use.

  * 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.
Something went wrong with that request. Please try again.