My configuration: Server is windows 64bit, MonetDB SQL 2.16.2 with ODBC 2.16.2.1. Client is windows 32bit, MonetDB SQL 2.16.2 with ODBC 2.16.2.1. I compared the contents of C:\program files\CWI\MonetDB4\lib with C:\windows\system32. All files with the same name match file size, version (where available), and timestamp. libmonet.dll and libbat.dll existed only in C:\program files\CWI\MonetDB4\lib so I copied them to the system32 directory and rebooted. The effect was the same.
From MSExcel 2003, the Microsoft query app reports "Drivers's SQLSetConnectAttr failed".
========= ODBC DEBUG ==============
DllMain 1
SQLAllocHandle Env 0
new env 1163bc0
SQLSetEnvAttr 1163bc0 200 2
SQLAllocHandle Dbc 1163bc0
new dbc 1163be0
SQLGetInfoW 1163be0 77
SQLSetConnectAttrW 1163be0 115
addDbcError 1163be0 HY092 Invalid attribute/option
identifier 0
SQLSetConnectOptionW 1163be0 103 2d
addDbcError 1163be0 HYC00 Optional feature not
implemented 0
SQLDriverConnectW 1163be0 "DSN=dev_test;" 1
SQLConnect: DSN=dev_test UID=monetdb PWD=monetdb
host=localhost port=50000 database=(null)
addDbcError 1163be0 08001 Client unable to establish
connection 0
SQLGetDiagRecW Dbc 1163be0 1
SQLGetDiagRecW Dbc 1163be0 1
SQLGetDiagFieldW Dbc 1163be0
SQLGetDiagFieldW Dbc 1163be0
SQLFreeHandle Dbc 1163be0
SQLFreeHandle Env 1163bc0
DllMain 3
DllMain 0
========= ODBC DEBUG ==============
I noticed in the log that the ODBC driver is trying to
incorrectly connect to localhost using the incorrect
username and password. I had this problem last year
but I thought it was fixed in 2.16.*.
--- Sjoerd Mullender
I have been trying to test ODBC with MonetDB with little success. JDBC and MapiClient are working.
MS*Excel, R, and other utilities all fail while
Colin Foss wrote: trying
to initialize a connection via ODBC to MonetDB.
Does anyone have a valid ODBC configuration to Monet?
I am assuming you're trying this on Windows. I just tried MonetDB4-SQL-2.16.2.msi and MonetDB5-SQL-2.16.2.msi on a clean 32 bit Windows XP Professional, and I had no problems.
Perhaps you can define your environment a bit more completely?
A few things to check/keep in mind:
The uninstall isn't robust. If the MonetDB ODBC driver is still somehow active during uninstall, some files remain in C:\windows\system32 which may then not be replaced on a subsequent install. Check whether the files libMapi.dll libMonetODBC.dll libMonetODBCs.dll libmutils.dll libstream.dll (in my installation, that's all files matching the pattern lib*.dll in C:\windows\system32) are identical to the files in your installation folder (typically C:\Program Files\CWI\MonetDB*\lib) are identical, and if not, copy the ones from the installation folder over the ones in C:\windows\system32.
Windows programs tend to not follow standards. I have encountered many programs (among them Excel) that produce SQL queries that MonetDB refuses. Typically the error is General Error, i.e. useless. The problem is usually column names that are the same as SQL keywords and that are not surrounded by double quotes.
You can produce debug output by setting an environment variable in the environment of the program using the ODBC driver (e.g. Excel). The variable name is ODBCDEBUG and the value should be the full path name of a file. This file will contain the debug output. Basically all calls to the driver will be logged there.
-- Sjoerd Mullender