diff --git a/ChangeLog b/ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2020-05-07  Mihai Giurgeanu  <mihai.giurgeanu@gmail.com>
+
+	* src/SQL/CLI.hs (sql_null_handle): Change type to SQLHANDLE.
+	On Windows, set value nullPtr.
+	(sql_null_henv): Change type to SQLHANDLE
+	Set value to sql_null_handle.
+	(sql_null_hdbc): Change type to SQLHANDLE
+	Set value to sql_null_handle.
+	(sql_null_hstmt): Change type to SQLHANDLE
+	Set value to sql_null_handle.
+	(sql_null_hdesc): Change type to SQLHANDLE
+	Set value to sql_null_handle.
+	(imports): Add import symbol - nullPtr
+
 2020-04-11  Mihai Giurgeanu  <mihai.giurgeanu@gmail.com>
 
 	* stack.yaml (resolver): change to lts-9.21
diff --git a/NEWS b/NEWS
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,11 @@
 sqlcli NEWS - history of user-visible changes
 =============================================
 
+Release 0.2.20
+--------------
+
+*   Fix compilation error on Windows.
+
 Release 0.2.1.0
 ----------------
 
diff --git a/sqlcli.cabal b/sqlcli.cabal
--- a/sqlcli.cabal
+++ b/sqlcli.cabal
@@ -1,11 +1,13 @@
 name:                sqlcli
-version:             0.2.1.0
-synopsis:            High quality SQL/CLI and ODBC C function bindings.
+version:             0.2.2.0
+synopsis:            Bindings for SQL/CLI (ODBC) C API.
 description:         See [NEWS](https://hub.darcs.net/mihaigiurgeanu/sqlcli/browse/NEWS)
                      for the ChangeLog.
 
                      Provides bindings to all the SQL/CLI C API standard.
-                     SQL/CLI C API is a subset of ODBC.
+                     SQL/CLI C API is a subset of ODBC. You can use this package to
+                     access databases through ODBC. It is tested on Windows, Linux
+                     and Mac operating Systems whith Postgres, Oracle and SQLite.
 
                      This package also contains Haskell wrapers to the foreign C calls and
                      utilities to make using the SQL/CLI easier for the Haskell
diff --git a/src/SQL/CLI.hs b/src/SQL/CLI.hs
--- a/src/SQL/CLI.hs
+++ b/src/SQL/CLI.hs
@@ -3,7 +3,7 @@
 module SQL.CLI where
 
 import Foreign.C.Types
-import Foreign.Ptr (Ptr)
+import Foreign.Ptr (Ptr, nullPtr)
 import Data.Bits ((.&.), complement)
 -- API declaration data types
 type SQLCHAR = CUChar
@@ -339,7 +339,7 @@
 sql_all_types :: Num a => a
 sql_all_types = 0
 
-  
+
 -- Default conversion code for BindCol(), BindParam() and GetData()
 sql_default :: Num a => a
 sql_default = 99
@@ -461,22 +461,26 @@
 
 
 -- null handles returned by AllocHandle()
-sql_null_henv :: Num a => a
-sql_null_henv = 0
+sql_null_henv :: SQLHANDLE
+sql_null_henv = sql_null_handle
 
-sql_null_hdbc :: Num a => a
-sql_null_hdbc = 0
+sql_null_hdbc :: SQLHANDLE
+sql_null_hdbc = sql_null_handle
 
-sql_null_hstmt :: Num a => a
-sql_null_hstmt = 0
+sql_null_hstmt :: SQLHANDLE
+sql_null_hstmt = sql_null_handle
 
-sql_null_hdesc :: Num a => a
-sql_null_hdesc = 0
+sql_null_hdesc :: SQLHANDLE
+sql_null_hdesc = sql_null_handle
 
 
 -- null handle used in place of parent handle when allocating HENV
-sql_null_handle :: Num a => a
+sql_null_handle :: SQLHANDLE
+#if ((defined WIN32) || (defined _WIN64))
+sql_null_handle = nullPtr
+#else
 sql_null_handle = 0
+#endif
 
 
 -- Values that may appear in the result set of SpecialColumns()
@@ -605,103 +609,103 @@
 
 sql_api_sqlgetconnectoption :: Num a => a
 sql_api_sqlgetconnectoption = 42
- 
+
 sql_api_sqlgetcursorname :: Num a => a
 sql_api_sqlgetcursorname = 17
- 
+
 sql_api_sqlgetdata :: Num a => a
 sql_api_sqlgetdata = 43
- 
+
 sql_api_sqlgetdescfield :: Num a => a
 sql_api_sqlgetdescfield = 1008
- 
+
 sql_api_sqlgetdescrec :: Num a => a
 sql_api_sqlgetdescrec = 1009
- 
+
 sql_api_sqlgetdiagfield :: Num a => a
 sql_api_sqlgetdiagfield = 1010
- 
+
 sql_api_sqlgetdiagrec :: Num a => a
 sql_api_sqlgetdiagrec = 1011
- 
+
 sql_api_sqlgetenvattr :: Num a => a
 sql_api_sqlgetenvattr = 1012
- 
+
 sql_api_sqlgetfunctions :: Num a => a
 sql_api_sqlgetfunctions = 44
- 
+
 sql_api_sqlgetinfo :: Num a => a
 sql_api_sqlgetinfo = 45
- 
+
 sql_api_sqlgetstmtattr :: Num a => a
 sql_api_sqlgetstmtattr = 1014
- 
+
 sql_api_sqlgetstmtoption :: Num a => a
 sql_api_sqlgetstmtoption = 46
- 
+
 sql_api_sqlgettypeinfo :: Num a => a
 sql_api_sqlgettypeinfo = 47
- 
+
 sql_api_sqllanguages :: Num a => a
 sql_api_sqllanguages = 2001
- 
+
 sql_api_sqlnumresultcols :: Num a => a
 sql_api_sqlnumresultcols = 18
- 
+
 sql_api_sqlparamdata :: Num a => a
 sql_api_sqlparamdata = 48
- 
+
 sql_api_sqlprepare :: Num a => a
 sql_api_sqlprepare = 19
- 
+
 sql_api_sqlputdata :: Num a => a
 sql_api_sqlputdata = 49
- 
+
 sql_api_sqlreleaseenv :: Num a => a
 sql_api_sqlreleaseenv = 1015
- 
+
 sql_api_sqlrowcount :: Num a => a
 sql_api_sqlrowcount = 20
- 
+
 sql_api_sqlserverinfo :: Num a => a
 sql_api_sqlserverinfo = 2002
- 
+
 sql_api_sqlsetconnectattr :: Num a => a
 sql_api_sqlsetconnectattr = 1016
- 
+
 sql_api_sqlsetconnectoption :: Num a => a
 sql_api_sqlsetconnectoption = 50
- 
+
 sql_api_sqlsetcursorname :: Num a => a
 sql_api_sqlsetcursorname = 21
- 
+
 sql_api_sqlsetdescfield :: Num a => a
 sql_api_sqlsetdescfield = 1017
- 
+
 sql_api_sqlsetdescrec :: Num a => a
 sql_api_sqlsetdescrec = 1018
- 
+
 sql_api_sqlsetenvattr :: Num a => a
 sql_api_sqlsetenvattr = 1019
- 
+
 sql_api_sqlsetparam :: Num a => a
 sql_api_sqlsetparam = 22
- 
+
 sql_api_sqlsetstmtattr :: Num a => a
 sql_api_sqlsetstmtattr = 1020
- 
+
 sql_api_sqlsetstmtoption :: Num a => a
 sql_api_sqlsetstmtoption = 51
- 
+
 sql_api_sqlspecialcolumns :: Num a => a
 sql_api_sqlspecialcolumns = 52
- 
+
 sql_api_sqlstatistics :: Num a => a
 sql_api_sqlstatistics = 53
- 
+
 sql_api_sqltables :: Num a => a
 sql_api_sqltables = 54
- 
+
 sql_api_sqltransact :: Num a => a
 sql_api_sqltransact = 23
 
@@ -709,70 +713,70 @@
 -- Information requested by GetInfo()
 sql_max_driver_connections :: Num a => a
 sql_max_driver_connections = 0
- 
+
 sql_max_concurrent_activities :: Num a => a
 sql_max_concurrent_activities = 1
- 
+
 sql_data_source_name :: Num a => a
 sql_data_source_name = 2
- 
+
 sql_fetch_direction :: Num a => a
 sql_fetch_direction = 8
- 
+
 sql_server_name :: Num a => a
 sql_server_name = 13
- 
+
 sql_search_pattern_escape :: Num a => a
 sql_search_pattern_escape = 14
- 
+
 sql_dbms_name :: Num a => a
 sql_dbms_name = 17
- 
+
 sql_dbms_ver :: Num a => a
 sql_dbms_ver = 18
- 
+
 sql_accessible_tables :: Num a => a
 sql_accessible_tables = 19
- 
+
 sql_cursor_commit_behavior :: Num a => a
 sql_cursor_commit_behavior = 23
- 
+
 sql_data_source_read_only :: Num a => a
 sql_data_source_read_only = 25
- 
+
 sql_default_txn_isolation :: Num a => a
 sql_default_txn_isolation = 26
- 
+
 sql_identifier_case :: Num a => a
 sql_identifier_case = 28
- 
+
 sql_identifier_quote_char :: Num a => a
 sql_identifier_quote_char = 29
- 
+
 sql_max_column_name_len :: Num a => a
 sql_max_column_name_len = 30
- 
+
 sql_max_cursor_name_len :: Num a => a
 sql_max_cursor_name_len = 31
- 
+
 sql_max_schema_name_len :: Num a => a
 sql_max_schema_name_len = 32
- 
+
 sql_max_catalog_name_len :: Num a => a
 sql_max_catalog_name_len = 34
- 
+
 sql_max_table_name_len :: Num a => a
 sql_max_table_name_len = 35
- 
+
 sql_scroll_concurrency :: Num a => a
 sql_scroll_concurrency = 43
- 
+
 sql_txn_capable :: Num a => a
 sql_txn_capable = 46
- 
+
 sql_user_name :: Num a => a
 sql_user_name = 47
- 
+
 sql_txn_isolation_option :: Num a => a
 sql_txn_isolation_option = 72
 
