Your answer in the part of SAP HANA (J)ODBC driver not supporting named parameters actually makes sense. However I don't understand why would there be a difference between PDO and regular odbc (odbc_connect, etc.) commands since they're obviously using the same driver.
My testing machine is on Windows and when using raw odbc commands, I pass in the driver parameter 'HDBODBC32'. If I use PDO, I have to pass in the ODBC DSN, which is created in the Windows ODBC management tool. I double checked and the driver in use is the same. So what bugs me is why would raw odbc commands accept parameters with ? and $ notations but PDO doesn't accept neither (well, query executes but doesn't return any results). I'd like to try and debug the PDO module but unfortunately that's beyond my knowledge and time frame for the moment :) Perhaps any advice on this, debugging PDO? If nothing else, using PDO would at least unify the database access accross my application and it does seem cleaner to use. On Tue, Jan 26, 2016 at 3:50 PM, Lester Caine <les...@lsces.co.uk> wrote: > On 26/01/16 19:06, Alko Kotalko wrote: > > I've tried all the notations with PDO as well and none of them work with > > SAP HANA. It works with MySQL though. So I presume that there is either a > > bug in PDO driver or there is some mismatch between PDO and SAP HANA. > > Firebird does not support named parameters so we stick with ? > parameters. Not sure on SAP HANA, but a quick google gives > "The SAP HANA JDBC driver doesn't support named parameters" and I would > anticipate that the ODBC driver probably has the same problem, but the > simpler ordered array of parameters should work ... > > There WAS a document about just what combinations HAVE been tested and > worked, but I'm not even sure now where it as created :( > > From the generic ODBC driver - > http://php.net/manual/en/function.odbc-prepare.php ... > Some databases (such as IBM DB2, MS SQL Server, and Oracle) support > stored procedures that accept parameters of type IN, INOUT, and OUT as > defined by the ODBC specification. However, the Unified ODBC driver > currently only supports parameters of type IN to stored procedures. > > It is some time since I used the ODBC interface, but I think PDO_odbc > still uses the generic ODBC inerface and this does have it's own > restrictons based on what platform you are using. It may be worth trying > the generic ODBC interface and see if this works any differently. The > ODBC driver uses the same style of working as the Firebird/Interbase > driver for binding variables and that does work. > > -- > Lester Caine - G8HFL > ----------------------------- > Contact - http://lsces.co.uk/wiki/?page=contact > L.S.Caine Electronic Services - http://lsces.co.uk > EnquirySolve - http://enquirysolve.com/ > Model Engineers Digital Workshop - http://medw.co.uk > Rainbow Digital Media - http://rainbowdigitalmedia.co.uk > > -- > PHP Database Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php > >