I've run into that bug too. I'm pretty sure its an issue with hdbc-odbc, but haven't wanted to patch it without testing it across a few other configurations, which I haven't had time/found straightforward to do.
I should add, for those interested, where I think the bug is. In the bindCol method of Statement.hsc, there's the following:
rc2 <- sqlBindParameter sthptr (fromIntegral icol)
#{const SQL_PARAM_INPUT}
#{const SQL_C_CHAR} coltype
(if isOK rc1 then colsize else fromIntegral cslen + 1) decdigits
csptr (fromIntegral cslen + 1) pcslen
Either one or both of the "fromIntegral csLen + 1" expressions shouldn't have the "+ 1".
Cheers,
Gershom