You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
(43) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(28) |
Feb
(6) |
Mar
(13) |
Apr
(10) |
May
(12) |
Jun
(14) |
Jul
(12) |
Aug
|
Sep
(32) |
Oct
(8) |
Nov
(6) |
Dec
(25) |
2005 |
Jan
(3) |
Feb
(26) |
Mar
(1) |
Apr
(40) |
May
(6) |
Jun
(2) |
Jul
(9) |
Aug
(5) |
Sep
(24) |
Oct
(8) |
Nov
(21) |
Dec
(6) |
2006 |
Jan
(17) |
Feb
(10) |
Mar
(3) |
Apr
|
May
(18) |
Jun
(2) |
Jul
(9) |
Aug
(4) |
Sep
|
Oct
(1) |
Nov
|
Dec
(1) |
2007 |
Jan
|
Feb
|
Mar
(1) |
Apr
(8) |
May
(2) |
Jun
|
Jul
(4) |
Aug
(2) |
Sep
(29) |
Oct
(15) |
Nov
(1) |
Dec
(1) |
2008 |
Jan
(2) |
Feb
|
Mar
(6) |
Apr
(1) |
May
(4) |
Jun
(13) |
Jul
(1) |
Aug
(3) |
Sep
|
Oct
(5) |
Nov
(7) |
Dec
(1) |
2009 |
Jan
(9) |
Feb
(4) |
Mar
(2) |
Apr
(5) |
May
|
Jun
|
Jul
|
Aug
(8) |
Sep
(11) |
Oct
(4) |
Nov
|
Dec
(20) |
2010 |
Jan
(9) |
Feb
(1) |
Mar
(2) |
Apr
(8) |
May
(3) |
Jun
(8) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2011 |
Jan
(3) |
Feb
(3) |
Mar
|
Apr
(5) |
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
(4) |
Dec
(5) |
2012 |
Jan
|
Feb
|
Mar
|
Apr
(3) |
May
(2) |
Jun
(10) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2013 |
Jan
(6) |
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
(4) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
From: Mark K. <gre...@ma...> - 2011-12-08 14:37:52
|
Jan, I have not found a solution to your problem, though I am trying to look into it as time allows. If you have any sample code to assist in debugging, please share. When given patches I try to upload to the SVN Repository as soon as I can, but it can be a few days to test the patches. If I missed any just let me know. I try to stay active as much as I can, but this is an opensource project and people donate time as they can. Regards, Mark Kromis On Dec 7, 2011, at 2:22 AM, Jan Breddin wrote: > Hi Arul, > > I'm not a part of the team but we are using this library in our > production software for many years so perhaps I can give some hints. > > 1. It is stable. > 2. My experience is, that all my mails to the mailing seem to be ignored, > even thoroughly tested bug fixes. > 3. If you mean wide character support: > - As already noted by Pete, please see my mail from 2011-09-12. If > you have further questions toward this topic feel free to contact me > for any questions you may have. > - Please note also, that libodbc uses wchar_t-streams also for binary > streams which renders this feature useless unless you fix this > (cf. point 2). > 4. Don't know. > > I'd like to note, that there are memory leaks if unicode-only drivers are > used with versions of unixODBC of 2.2.12 and prior. Unfortunately, many > current linux distributions still use this and even older versions, so you > might have to build unixODBC on your own. > > Regards > Jan > > ------------------------------------------------------------------------------ > Cloud Services Checklist: Pricing and Packaging Optimization > This white paper is intended to serve as a reference, checklist and point of > discussion for anyone considering optimizing the pricing and packaging model > of a cloud services business. Read Now! > http://www.accelacomm.com/jaw/sfnl/114/51491232/ > _______________________________________________ > libodbcxx-devel mailing list > lib...@li... > https://lists.sourceforge.net/lists/listinfo/libodbcxx-devel |
From: Jan B. <jbr...@ya...> - 2011-12-07 07:22:39
|
Hi Arul, I'm not a part of the team but we are using this library in our production software for many years so perhaps I can give some hints. 1. It is stable. 2. My experience is, that all my mails to the mailing seem to be ignored, even thoroughly tested bug fixes. 3. If you mean wide character support: - As already noted by Pete, please see my mail from 2011-09-12. If you have further questions toward this topic feel free to contact me for any questions you may have. - Please note also, that libodbc uses wchar_t-streams also for binary streams which renders this feature useless unless you fix this (cf. point 2). 4. Don't know. I'd like to note, that there are memory leaks if unicode-only drivers are used with versions of unixODBC of 2.2.12 and prior. Unfortunately, many current linux distributions still use this and even older versions, so you might have to build unixODBC on your own. Regards Jan |
From: Arul K. A. <aru...@gm...> - 2011-12-06 16:44:12
|
Hi libodbc Team, The following question was asked one month before but still there is no reply. https://sourceforge.net/mailarchive/message.php?msg_id=28374194 Could you please reply for the above post? Thanks Arul |
From: Arul K. A. <aru...@gm...> - 2011-12-06 13:28:49
|
Hi libodbc++ Team, I like your libodbc++ class design, I m planning to use libodbc++ to connect to MS SQL server using unixODBC in my project. But my project team members are asking the following questions 1. How stable it is? 2. Can I get bug fix support if I found while using libodbc++? 3. Whether it has wide users supports? 4. Muliti threading support, I want to use it in a multi-threaded environment like, I planned to use connection pooling, so all thread can get connection from pool. Thanks Arul Kumar |
From: simone p. <sim...@gm...> - 2011-11-29 17:03:37
|
Hi, I included all the source files to the project and the compilation ran happily. Apparently it is fixed... On 29 November 2011 16:53, Mark Kromis <gre...@ma...> wrote: > With the latest version on the website (libodbc++-0.2.5), using the > makefile.w32 in the win32 folder from a WinSDK 7.1 console prompt I get a > complete compile. It looks like your missing a stdlib file, which is > strange since VisStudio is good at auto linking. > > According to dependency walker, the dll is linked to kernel32, odbc32, > msvcp100, and msvcr100. > I would say make sure you don't have any strange linker / compiler options > checked, like using managed runtime or something. > > Good Luck, > Mark Kromis > > On Nov 29, 2011, at 9:09 AM, simone pilozzi wrote: > > > Dear Users, > > I am gradually switching a project to VC10. The project runs many calls > to a SQL database. > > It was compiling and running happily in VC9 but now, at compile time I > got this linking error: > > > > odbc++sd.lib(resultset.obj) : error LNK2019: unresolved external symbol > "__declspec(dllimport) public: int __thiscall > std::basic_istream<char,struct std::char_traits<char> >::gcount(void)const > " (__imp_?gcount@?$basic_istream@DU?$char_traits@D@std@@@std@@QBEHXZ) > referenced in function "int __cdecl odbc::readStream(class > std::basic_istream<char,struct std::char_traits<char> > *,char *,unsigned > int)" (?readStream@odbc@@YAHPAV?$basic_istream@DU?$char_traits@D@std@ > @@std@@PADI@Z) > > 1>odbc++sd.lib(preparedstatement.obj) : error LNK2001: unresolved > external symbol "__declspec(dllimport) public: int __thiscall > std::basic_istream<char,struct std::char_traits<char> >::gcount(void)const > " (__imp_?gcount@?$basic_istream@DU?$char_traits@D@std@@@std@@QBEHXZ) > > 1>odbc++sd.lib(resultset.obj) : error LNK2019: unresolved external > symbol "__declspec(dllimport) public: class std::basic_istream<char,struct > std::char_traits<char> > & __thiscall std::basic_istream<char,struct > std::char_traits<char> >::read(char *,int)" (__imp_?read@ > ?$basic_istream@DU?$char_traits@D@std@@@std@@QAEAAV12@PADH@Z) referenced > in function "int __cdecl odbc::readStream(class > std::basic_istream<char,struct std::char_traits<char> > *,char *,unsigned > int)" (?readStream@odbc@@YAHPAV?$basic_istream@DU?$char_traits@D@std@ > @@std@@PADI@Z) > > 1>odbc++sd.lib(preparedstatement.obj) : error LNK2001: unresolved > external symbol "__declspec(dllimport) public: class > std::basic_istream<char,struct std::char_traits<char> > & __thiscall > std::basic_istream<char,struct std::char_traits<char> >::read(char *,int)" > (__imp_?read@?$basic_istream@DU?$char_traits@D@std@@@std@@QAEAAV12@PADH@Z) > > 1>odbc++sd.lib(resultset.obj) : error LNK2019: unresolved external > symbol "__declspec(dllimport) public: __thiscall > std::basic_stringstream<char,struct std::char_traits<char>,class > std::allocator<char> >::basic_stringstream<char,struct > std::char_traits<char>,class std::allocator<char> >(int)" > (__imp_??0?$basic_stringstream@DU?$char_traits@D@std@@V?$allocator@D@2@ > @std@@QAE@H@Z) referenced in function "class > std::basic_istream<char,struct std::char_traits<char> > * __cdecl > odbc::stringToStream(class std::basic_string<char,struct > std::char_traits<char>,class std::allocator<char> > const &)" > (?stringToStream@odbc@@YAPAV?$basic_istream@DU?$char_traits@D@std@@@std@ > @ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@@Z) > > 1>odbc++sd.lib(datahandler.obj) : error LNK2001: unresolved external > symbol "__declspec(dllimport) public: __thiscall > std::basic_stringstream<char,struct std::char_traits<char>,class > std::allocator<char> >::basic_stringstream<char,struct > std::char_traits<char>,class std::allocator<char> >(int)" > (__imp_??0?$basic_stringstream@DU?$char_traits@D@std@@V?$allocator@D@2@ > @std@@QAE@H@Z) > > 1>odbc++sd.lib(resultset.obj) : error LNK2019: unresolved external > symbol "__declspec(dllimport) public: void __thiscall > std::basic_stringstream<char,struct std::char_traits<char>,class > std::allocator<char> >::`vbase destructor'(void)" > (__imp_??_D?$basic_stringstream@DU?$char_traits@D@std@@V?$allocator@D@2@ > @std@@QAEXXZ) referenced in function "public: virtual void * __thiscall > std::basic_stringstream<char,struct std::char_traits<char>,class > std::allocator<char> >::`scalar deleting destructor'(unsigned int)" > (??_G?$basic_stringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@ > @UAEPAXI@Z) > > .... > > > > Is anyone familiar with this and how to fix it? > > Thanks in advance > > > > > ------------------------------------------------------------------------------ > > All the data continuously generated in your IT infrastructure > > contains a definitive record of customers, application performance, > > security threats, fraudulent activity, and more. Splunk takes this > > data and makes sense of it. IT sense. And common sense. > > > http://p.sf.net/sfu/splunk-novd2d_______________________________________________ > > libodbcxx-devel mailing list > > lib...@li... > > https://lists.sourceforge.net/lists/listinfo/libodbcxx-devel > > > > ------------------------------------------------------------------------------ > All the data continuously generated in your IT infrastructure > contains a definitive record of customers, application performance, > security threats, fraudulent activity, and more. Splunk takes this > data and makes sense of it. IT sense. And common sense. > http://p.sf.net/sfu/splunk-novd2d > _______________________________________________ > libodbcxx-devel mailing list > lib...@li... > https://lists.sourceforge.net/lists/listinfo/libodbcxx-devel > |
From: Mark K. <gre...@ma...> - 2011-11-29 15:53:59
|
With the latest version on the website (libodbc++-0.2.5), using the makefile.w32 in the win32 folder from a WinSDK 7.1 console prompt I get a complete compile. It looks like your missing a stdlib file, which is strange since VisStudio is good at auto linking. According to dependency walker, the dll is linked to kernel32, odbc32, msvcp100, and msvcr100. I would say make sure you don't have any strange linker / compiler options checked, like using managed runtime or something. Good Luck, Mark Kromis On Nov 29, 2011, at 9:09 AM, simone pilozzi wrote: > Dear Users, > I am gradually switching a project to VC10. The project runs many calls to a SQL database. > It was compiling and running happily in VC9 but now, at compile time I got this linking error: > > odbc++sd.lib(resultset.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: int __thiscall std::basic_istream<char,struct std::char_traits<char> >::gcount(void)const " (__imp_?gcount@?$basic_istream@DU?$char_traits@D@std@@@std@@QBEHXZ) referenced in function "int __cdecl odbc::readStream(class std::basic_istream<char,struct std::char_traits<char> > *,char *,unsigned int)" (?readStream@odbc@@YAHPAV?$basic_istream@DU?$char_traits@D@std@@@std@@PADI@Z) > 1>odbc++sd.lib(preparedstatement.obj) : error LNK2001: unresolved external symbol "__declspec(dllimport) public: int __thiscall std::basic_istream<char,struct std::char_traits<char> >::gcount(void)const " (__imp_?gcount@?$basic_istream@DU?$char_traits@D@std@@@std@@QBEHXZ) > 1>odbc++sd.lib(resultset.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: class std::basic_istream<char,struct std::char_traits<char> > & __thiscall std::basic_istream<char,struct std::char_traits<char> >::read(char *,int)" (__imp_?read@?$basic_istream@DU?$char_traits@D@std@@@std@@QAEAAV12@PADH@Z) referenced in function "int __cdecl odbc::readStream(class std::basic_istream<char,struct std::char_traits<char> > *,char *,unsigned int)" (?readStream@odbc@@YAHPAV?$basic_istream@DU?$char_traits@D@std@@@std@@PADI@Z) > 1>odbc++sd.lib(preparedstatement.obj) : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class std::basic_istream<char,struct std::char_traits<char> > & __thiscall std::basic_istream<char,struct std::char_traits<char> >::read(char *,int)" (__imp_?read@?$basic_istream@DU?$char_traits@D@std@@@std@@QAEAAV12@PADH@Z) > 1>odbc++sd.lib(resultset.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall std::basic_stringstream<char,struct std::char_traits<char>,class std::allocator<char> >::basic_stringstream<char,struct std::char_traits<char>,class std::allocator<char> >(int)" (__imp_??0?$basic_stringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@H@Z) referenced in function "class std::basic_istream<char,struct std::char_traits<char> > * __cdecl odbc::stringToStream(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?stringToStream@odbc@@YAPAV?$basic_istream@DU?$char_traits@D@std@@@std@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@@Z) > 1>odbc++sd.lib(datahandler.obj) : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall std::basic_stringstream<char,struct std::char_traits<char>,class std::allocator<char> >::basic_stringstream<char,struct std::char_traits<char>,class std::allocator<char> >(int)" (__imp_??0?$basic_stringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@H@Z) > 1>odbc++sd.lib(resultset.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void __thiscall std::basic_stringstream<char,struct std::char_traits<char>,class std::allocator<char> >::`vbase destructor'(void)" (__imp_??_D?$basic_stringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEXXZ) referenced in function "public: virtual void * __thiscall std::basic_stringstream<char,struct std::char_traits<char>,class std::allocator<char> >::`scalar deleting destructor'(unsigned int)" (??_G?$basic_stringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@UAEPAXI@Z) > .... > > Is anyone familiar with this and how to fix it? > Thanks in advance > > ------------------------------------------------------------------------------ > All the data continuously generated in your IT infrastructure > contains a definitive record of customers, application performance, > security threats, fraudulent activity, and more. Splunk takes this > data and makes sense of it. IT sense. And common sense. > http://p.sf.net/sfu/splunk-novd2d_______________________________________________ > libodbcxx-devel mailing list > lib...@li... > https://lists.sourceforge.net/lists/listinfo/libodbcxx-devel |
From: simone p. <sim...@gm...> - 2011-11-29 14:10:03
|
Dear Users, I am gradually switching a project to VC10. The project runs many calls to a SQL database. It was compiling and running happily in VC9 but now, at compile time I got this linking error: odbc++sd.lib(resultset.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: int __thiscall std::basic_istream<char,struct std::char_traits<char> >::gcount(void)const " (__imp_?gcount@?$basic_istream@DU?$char_traits@D@std@@@std@@QBEHXZ) referenced in function "int __cdecl odbc::readStream(class std::basic_istream<char,struct std::char_traits<char> > *,char *,unsigned int)" (?readStream@odbc@@YAHPAV?$basic_istream@DU?$char_traits@D@std@@@std@ @PADI@Z) 1>odbc++sd.lib(preparedstatement.obj) : error LNK2001: unresolved external symbol "__declspec(dllimport) public: int __thiscall std::basic_istream<char,struct std::char_traits<char> >::gcount(void)const " (__imp_?gcount@?$basic_istream@DU?$char_traits@D@std@@@std@@QBEHXZ) 1>odbc++sd.lib(resultset.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: class std::basic_istream<char,struct std::char_traits<char> > & __thiscall std::basic_istream<char,struct std::char_traits<char> >::read(char *,int)" (__imp_?read@?$basic_istream@DU ?$char_traits@D@std@@@std@@QAEAAV12@PADH@Z) referenced in function "int __cdecl odbc::readStream(class std::basic_istream<char,struct std::char_traits<char> > *,char *,unsigned int)" (?readStream@odbc @@YAHPAV?$basic_istream@DU?$char_traits@D@std@@@std@@PADI@Z) 1>odbc++sd.lib(preparedstatement.obj) : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class std::basic_istream<char,struct std::char_traits<char> > & __thiscall std::basic_istream<char,struct std::char_traits<char> >::read(char *,int)" (__imp_?read@?$basic_istream@DU ?$char_traits@D@std@@@std@@QAEAAV12@PADH@Z) 1>odbc++sd.lib(resultset.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall std::basic_stringstream<char,struct std::char_traits<char>,class std::allocator<char> >::basic_stringstream<char,struct std::char_traits<char>,class std::allocator<char> >(int)" (__imp_??0?$basic_stringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@ @QAE@H@Z) referenced in function "class std::basic_istream<char,struct std::char_traits<char> > * __cdecl odbc::stringToStream(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?stringToStream@odbc @@YAPAV?$basic_istream@DU?$char_traits@D@std@@@std@@ABV?$basic_string@DU ?$char_traits@D@std@@V?$allocator@D@2@@3@@Z) 1>odbc++sd.lib(datahandler.obj) : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall std::basic_stringstream<char,struct std::char_traits<char>,class std::allocator<char> >::basic_stringstream<char,struct std::char_traits<char>,class std::allocator<char> >(int)" (__imp_??0?$basic_stringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@ @QAE@H@Z) 1>odbc++sd.lib(resultset.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void __thiscall std::basic_stringstream<char,struct std::char_traits<char>,class std::allocator<char> >::`vbase destructor'(void)" (__imp_??_D?$basic_stringstream@DU?$char_traits@D@std@@V?$allocator@D@2@ @std@@QAEXXZ) referenced in function "public: virtual void * __thiscall std::basic_stringstream<char,struct std::char_traits<char>,class std::allocator<char> >::`scalar deleting destructor'(unsigned int)" (??_G?$basic_stringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@ @UAEPAXI@Z) .... Is anyone familiar with this and how to fix it? Thanks in advance |
From: Srinivasan T <sri...@ve...> - 2011-11-09 08:04:05
|
Hi, I have statically linked libodbc++ library (libodbc++-mt.a) with my C++ application to store/retrieve data from MySQL. Previously, when I was using libodbc++-0.2.3, database inserts (using preparestatement) works well even for strings with morethan 255 characters. I upgraded to libodbc++-0.2.4pre4 and when I do inserts with morethan 255 characters, the string is truncated to 255 characters and then inserted into the database. Im using unixODBC 2.2.15pre and libmyodbc v3.51.27. Am I missing anything. Can anyone help me on this. Regards, Srini |
From: Jan B. <jbr...@ya...> - 2011-09-12 09:11:25
|
Hi, there is an issue relating the unicode support under Linux, which has been raised in 2005 but seems not to have been resolved. (http://sourceforge.net/mailarchive/message.php?msg_id=2061890) The problem is, that the unicode support in libodbc assumes that SQLWCHAR is the same as wchar_t. This assumption holds on Windows, but does not hold on Linux: Under Linux wchar_t is 32bit (UTF-32) but unixODBC requires that SQLWCHAR* contains UTF-16 data. As a consequence, the currently implemented unicode support fails on Linux. I see the following options: 1) Compile unixODBC with SQLWCHAR=wchar_t. This requires that all ODBC drivers have to be compiled the same way, which seems quite unrealistic. 2) Use -fshort-wchar option of gcc for the program and libodbc. Unfortunately, this also requires to rebuild libstd (see e.g. http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32240), which also seems quite unrealistic. 3) Fix libodbc to convert from basic_string<wchar_t> to UTF-16 data and vice versa, e.g. with iconv. Imho this would be the a solution but the one which requires a lot of work. Any suggestions/comments? Regards Jan |
From: Pete <pe...@ka...> - 2011-04-07 10:45:33
|
Simone, you can find most answers to your questions by reading the documentation ( <http://libodbcxx.sourceforge.net/libodbc++/progref/> http://libodbcxx.sourceforge.net/libodbc++/progref/) and by playing with the test files included with the library. I also recommend you study SQL Server's stored procedures in detail. _____ From: simone pilozzi [mailto:sim...@gm...] Sent: Thursday, 7 April 2011 7:24 p.m. To: Pete Cc: libodbc++ development mailing list Subject: Re: [libodbcxx-devel] Error binding parameter: [Microsoft][ODBC SQL Server Driver]Fonctionnalité optionnelle non implémentée It works, But I have the same problem for a stored procedure (not a function this time) sp that returns a recordset (it is taken from a temporary table #t) then the code sounds like this CREATE PROCEDURE sp @p1 as varchar(50) @p2 as datetime BEGIN create table #t(p3 varchar, p4 int) --fill #t select * from #t END (then no output parameters in the parameters list) In order to use the callable statement should I create a wrap like this for instance? CREATE PROCEDURE wrap_sp @p1 as varchar(50) @p2 as datetime @p3 as varchar @p4 as int BEGIN create table @t(t3 varchar, t4 int) declare sp_cursor cursor for exec sp @p1,@p2 fetch next from sp_cursor into @p3,@4 while @@fetch_status = 0 BEGIN insert into @t(@p3,@p4) fetch next from sp_cursor into @p3,@4 END select * from @p END do you think that callableStatement({? wrap_sp(?,?,?,?)}) using @p1, @p2 as input and @p3,p@4 as output will return me the same recordset as a SQL line like exec sp @p1,@p2? Thanks again On 6 April 2011 14:33, simone pilozzi <sim...@gm...> wrote: Thanks again! I try it On 6 April 2011 13:44, Pete <pe...@ka...> wrote: Try running this SQL using MS tools first: SELECT ISNULL(dbo.getInstrumentName('XS0459028626'), 'Name Not found') If it works, you can try and run this: string findCode(const string& strCode) { string strReturn; ostringstream ostrm; ostrm << "SELECT ISNULL(dbo.getInstrumentName('" << strCode << "'), 'Name Not found')"; try { auto_ptr<odbc::Statement> pStmnt = auto_ptr<odbc::Statement>(m_pConnection->createStatement()); auto_ptr<odbc::ResultSet> pRslts = auto_ptr<odbc::ResultSet>(pStmnt->executeQuery(ostrm.str())); if (pRslts->first()) strReturn = pRslts->getString(1); } catch(odbc::SQLException& e) { // deal with errors } return strReturn; } _____ From: simone pilozzi [mailto:sim...@gm...] Sent: Wednesday, 6 April 2011 10:53 p.m. To: Pete Subject: Re: [libodbcxx-devel] Error binding parameter: [Microsoft][ODBC SQL Server Driver]Fonctionnalité optionnelle non implémentée Thanks, Unfortunately I am only a user of this db so I cannot change it. Is there any way of getting the results of a function with callableStatement (or else)? Thanks On 6 April 2011 12:04, Pete <pe...@ka...> wrote: You're declaring a function not a stored procedure. These two things are different. You could do this and then simply process the result set returned: CREATE PROCEDURE getInstrumentName(@code varchar(50)) AS SELECT ISNULL(Long_Name, 'Name Not found') FROM Table WHERE Code = @code END or you could do it this way and then try to read the output parameter after calling the procedure: CREATE PROCEDURE getInstrumentName(@code varchar(50), OUTPUT @name varchar(5)) AS SELECT @name=ISNULL(Long_Name, 'Name Not found') FROM Table WHERE Code = @code END _____ From: simone pilozzi [mailto:sim...@gm...] Sent: Wednesday, 6 April 2011 7:02 p.m. To: Pete Subject: Re: [libodbcxx-devel] Error binding parameter: [Microsoft][ODBC SQL Server Driver]Fonctionnalité optionnelle non implémentée Yes it is like this, The scalar fuction declaration lacks the output parameters. For the pure db purposes it works perfectly but this makes it unusable (I have not the right to change it) for the callableStatement method isn't it? Do you see any alternatives? Thanks in advance. ALTER FUNCTION [dbo].[getInstrumentName] ( -- Add the parameters for the function here @code varchar(50) ) RETURNS varchar(255) AS BEGIN -- Declare the return variable here DECLARE @Result varchar(255) select @Result = Long_Name from Table where Code = @code if ( @Result is null ) select @Result = 'Name Not found' RETURN @Result END On 6 April 2011 00:10, Pete <pe...@ka...> wrote: It would help if you showed the stored procedure too. I would expect the declaration of the stored procedure to look somewhat like this: DECLARE PROEDURE getInstrumentName(OUTPUT @code varchar(20)) AS... The error message indicates to me the OUT or OUTPUT keyword is missing. _____ From: simone pilozzi [mailto:sim...@gm...] Sent: Tuesday, 5 April 2011 8:58 p.m. To: libodbc++ development mailing list Cc: Pete Subject: Re: [libodbcxx-devel] Error binding parameter: [Microsoft][ODBC SQL Server Driver]Fonctionnalité optionnelle non implémentée Thanks, In fact there's something wrong in my syntax. Here I call a scalar function with one input parameteres that returns the name of an instruments given its code(varchar both). odbc::CallableStatement* cs = connection->prepareCall( "{call getInstrumentName(?)}"); cs->registerOutParameter(1,12); cs->setString(1, "XS0459028626"); odbc::ResultSet* rs = cs->executeQuery(); The returned error is: The formal parameter "@code" was not declared as an OUTPUT parameter, but the actual parameter passed in requested output. Where am I wrong? (the other queries direct to a table are work correctly) On 5 April 2011 10:10, Pete <pe...@ka...> wrote: Note that by default, libodbc treats all parameters as input/output. You only use registerOutParameter to register output only parameters. Setting the value is wrong. Also try: - using the correct sqlType in registerOutParameter, 4 is SQL_CHAR - placing the OUT parameter last in your stored procedure procedure Pete _____ From: simone pilozzi [mailto:sim...@gm...] Sent: Tuesday, 5 April 2011 7:12 p.m. To: lib...@li... Subject: [libodbcxx-devel] Error binding parameter: [Microsoft][ODBC SQL Server Driver]Fonctionnalité optionnelle non implémentée Hi all, I am runninng a stored procedure from a Visual C++ project using odbc++. The procedure has 3 input parameters and a table with 24 cols as results. This is roughly the code: odbc::CallableStatement* cs = connection->prepareCall( "{call donotKnow(?,?,?)}"); cs->setInt(1,assetid); cs->setString(2,assetype ); cs->setDate(3,t); cs->registerOutParameter(1,4); odbc::ResultSet* rs = cs->executeQuery(); At runtime I receive the following error Error binding parameter: [Microsoft][ODBC SQL Server Driver]Fonctionnalité optionnelle non implémentée The error occurs only if I add the output parameter... Any idea? Thanks ---------------------------------------------------------------------------- -- Xperia(TM) PLAY It's a major breakthrough. An authentic gaming smartphone on the nation's most reliable network. And it wants your games. http://p.sf.net/sfu/verizon-sfdev _______________________________________________ libodbcxx-devel mailing list lib...@li... https://lists.sourceforge.net/lists/listinfo/libodbcxx-devel |
From: simone p. <sim...@gm...> - 2011-04-07 07:24:31
|
It works, But I have the same problem for a stored procedure (not a function this time) sp that returns a recordset (it is taken from a temporary table #t) then the code sounds like this CREATE PROCEDURE sp @p1 as varchar(50) @p2 as datetime BEGIN create table #t(p3 varchar, p4 int) --fill #t select * from #t END (then no output parameters in the parameters list) In order to use the callable statement should I create a wrap like this for instance? CREATE PROCEDURE wrap_sp @p1 as varchar(50) @p2 as datetime @p3 as varchar @p4 as int BEGIN create table @t(t3 varchar, t4 int) declare sp_cursor cursor for exec sp @p1,@p2 fetch next from sp_cursor into @p3,@4 while @@fetch_status = 0 BEGIN insert into @t(@p3,@p4) fetch next from sp_cursor into @p3,@4 END select * from @p END do you think that callableStatement({? wrap_sp(?,?,?,?)}) using @p1, @p2 as input and @p3,p@4 as output will return me the same recordset as a SQL line like exec sp @p1,@p2? Thanks again On 6 April 2011 14:33, simone pilozzi <sim...@gm...> wrote: > Thanks again! > > I try it > > On 6 April 2011 13:44, Pete <pe...@ka...> wrote: > >> Try running this SQL using MS tools first: >> >> SELECT ISNULL(dbo.getInstrumentName('XS0459028626'), 'Name Not found') >> >> If it works, you can try and run this: >> >> string findCode(const string& strCode) >> { >> string strReturn; >> ostringstream ostrm; >> >> ostrm << "SELECT ISNULL(dbo.getInstrumentName('" << strCode << "'), 'Name >> Not found')"; >> >> try >> { >> auto_ptr<odbc::Statement> pStmnt = >> auto_ptr<odbc::Statement>(m_pConnection->createStatement()); >> auto_ptr<odbc::ResultSet> pRslts = >> auto_ptr<odbc::ResultSet>(pStmnt->executeQuery(ostrm.str())); >> >> if (pRslts->first()) >> strReturn = pRslts->getString(1); >> } >> catch(odbc::SQLException& e) >> { >> // deal with errors >> } >> >> return strReturn; >> } >> >> ------------------------------ >> *From:* simone pilozzi [mailto:sim...@gm...] >> *Sent:* Wednesday, 6 April 2011 10:53 p.m. >> >> *To:* Pete >> *Subject:* Re: [libodbcxx-devel] Error binding parameter: >> [Microsoft][ODBC SQL Server Driver]Fonctionnalité optionnelle non >> implémentée >> >> Thanks, >> >> Unfortunately I am only a user of this db so I cannot change it. Is there >> any way of getting the results of a function with callableStatement (or >> else)? >> Thanks >> >> On 6 April 2011 12:04, Pete <pe...@ka...> wrote: >> >>> You're declaring a function not a stored procedure. These two things >>> are different. >>> >>> You could do this and then simply process the result set returned: >>> >>> CREATE PROCEDURE getInstrumentName(@code varchar(50)) AS >>> SELECT ISNULL(Long_Name, 'Name Not found') FROM Table WHERE Code = @code >>> >>> END >>> >>> or you could do it this way and then try to read the output parameter >>> after calling the procedure: >>> >>> CREATE PROCEDURE getInstrumentName(@code varchar(50), OUTPUT @name >>> varchar(5)) AS >>> SELECT @name=ISNULL(Long_Name, 'Name Not found') FROM Table WHERE Code =@code >>> END >>> >>> ------------------------------ >>> *From:* simone pilozzi [mailto:sim...@gm...] >>> *Sent:* Wednesday, 6 April 2011 7:02 p.m. >>> *To:* Pete >>> >>> *Subject:* Re: [libodbcxx-devel] Error binding parameter: >>> [Microsoft][ODBC SQL Server Driver]Fonctionnalité optionnelle non >>> implémentée >>> >>> Yes it is like this, >>> The scalar fuction declaration lacks the output parameters. >>> For the pure db purposes it works perfectly but this makes it unusable >>> (I have not the right to change it) for the callableStatement method >>> isn't it? >>> >>> Do you see any alternatives? >>> >>> Thanks in advance. >>> >>> >>> ALTER >>> FUNCTION [dbo].[getInstrumentName] >>> >>> ( >>> >>> -- Add the parameters for the function here >>> >>> @code >>> varchar(50) >>> >>> ) >>> >>> RETURNS >>> varchar(255) >>> >>> AS >>> >>> BEGIN >>> >>> -- Declare the return variable here >>> >>> DECLARE @Result varchar(255) >>> >>> select @Result = Long_Name from Table where Code = @code >>> >>> if ( @Result is null ) >>> >>> select @Result = 'Name Not found' >>> >>> RETURN @Result >>> >>> END >>> >>> >>> On 6 April 2011 00:10, Pete <pe...@ka...> wrote: >>> >>>> It would help if you showed the stored procedure too. I would expect >>>> the declaration of the stored procedure to look somewhat like this: >>>> >>>> DECLARE PROEDURE getInstrumentName(OUTPUT @code varchar(20)) AS... >>>> >>>> The error message indicates to me the OUT or OUTPUT keyword is missing. >>>> >>>> ------------------------------ >>>> *From:* simone pilozzi [mailto:sim...@gm...] >>>> *Sent:* Tuesday, 5 April 2011 8:58 p.m. >>>> *To:* libodbc++ development mailing list >>>> *Cc:* Pete >>>> *Subject:* Re: [libodbcxx-devel] Error binding parameter: >>>> [Microsoft][ODBC SQL Server Driver]Fonctionnalité optionnelle non >>>> implémentée >>>> >>>> Thanks, >>>> >>>> In fact there's something wrong in my syntax. >>>> Here I call a scalar function with one input parameteres that returns >>>> the name of an instruments given its code(varchar both). >>>> >>>> >>>> odbc::CallableStatement* cs = connection->prepareCall( >>>> "{call getInstrumentName(?)}"); >>>> >>>> cs->registerOutParameter(1,12); >>>> >>>> cs->setString(1, >>>> "XS0459028626"); >>>> >>>> odbc::ResultSet* rs = cs->executeQuery(); >>>> >>>> The returned error is: >>>> >>>> The formal parameter "@code" was not declared as an OUTPUT parameter, >>>> but the actual parameter passed in requested output. >>>> >>>> Where am I wrong? >>>> >>>> (the other queries direct to a table are work correctly) >>>> >>>> >>>> >>>> >>>> On 5 April 2011 10:10, Pete <pe...@ka...> wrote: >>>> >>>>> Note that by default, libodbc treats all parameters as input/output. >>>>> You only use registerOutParameter to register output only parameters. >>>>> Setting the value is wrong. >>>>> >>>>> Also try: >>>>> >>>>> - using the correct sqlType in registerOutParameter, 4 is SQL_CHAR >>>>> - placing the OUT parameter last in your stored procedure procedure >>>>> >>>>> Pete >>>>> >>>>> >>>>> ------------------------------ >>>>> *From:* simone pilozzi [mailto:sim...@gm...] >>>>> *Sent:* Tuesday, 5 April 2011 7:12 p.m. >>>>> *To:* lib...@li... >>>>> *Subject:* [libodbcxx-devel] Error binding parameter: [Microsoft][ODBC >>>>> SQL Server Driver]Fonctionnalité optionnelle non implémentée >>>>> >>>>> Hi all, >>>>> >>>>> I am runninng a stored procedure from a Visual C++ project using >>>>> odbc++. >>>>> >>>>> The procedure has 3 input parameters and a table with 24 cols as >>>>> results. This is roughly the code: >>>>> >>>>> >>>>> odbc::CallableStatement* cs = connection->prepareCall( >>>>> "{call donotKnow(?,?,?)}"); >>>>> >>>>> cs->setInt(1,assetid); >>>>> >>>>> cs->setString(2,assetype >>>>> ); >>>>> >>>>> cs->setDate(3,t); >>>>> >>>>> cs->registerOutParameter(1,4); >>>>> >>>>> odbc::ResultSet* rs = cs->executeQuery(); >>>>> >>>>> At runtime I receive the following error >>>>> >>>>> Error binding parameter: [Microsoft][ODBC SQL Server >>>>> Driver]Fonctionnalité optionnelle non implémentée >>>>> >>>>> The error occurs only if I add the output parameter... >>>>> >>>>> Any idea? >>>>> >>>>> Thanks >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> Xperia(TM) PLAY >>>>> It's a major breakthrough. An authentic gaming >>>>> smartphone on the nation's most reliable network. >>>>> And it wants your games. >>>>> http://p.sf.net/sfu/verizon-sfdev >>>>> _______________________________________________ >>>>> libodbcxx-devel mailing list >>>>> lib...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/libodbcxx-devel >>>>> >>>>> >>>> >>> >> > |
From: simone p. <sim...@gm...> - 2011-04-05 08:58:10
|
Thanks, In fact there's something wrong in my syntax. Here I call a scalar function with one input parameteres that returns the name of an instruments given its code(varchar both). odbc::CallableStatement* cs = connection->prepareCall("{call getInstrumentName(?)}"); cs->registerOutParameter(1,12); cs->setString(1,"XS0459028626"); odbc::ResultSet* rs = cs->executeQuery(); The returned error is: The formal parameter "@code" was not declared as an OUTPUT parameter, but the actual parameter passed in requested output. Where am I wrong? (the other queries direct to a table are work correctly) On 5 April 2011 10:10, Pete <pe...@ka...> wrote: > Note that by default, libodbc treats all parameters as input/output. You > only use registerOutParameter to register output only parameters. Setting > the value is wrong. > > Also try: > > - using the correct sqlType in registerOutParameter, 4 is SQL_CHAR > - placing the OUT parameter last in your stored procedure procedure > > Pete > > > ------------------------------ > *From:* simone pilozzi [mailto:sim...@gm...] > *Sent:* Tuesday, 5 April 2011 7:12 p.m. > *To:* lib...@li... > *Subject:* [libodbcxx-devel] Error binding parameter: [Microsoft][ODBC SQL > Server Driver]Fonctionnalité optionnelle non implémentée > > Hi all, > > I am runninng a stored procedure from a Visual C++ project using odbc++. > > The procedure has 3 input parameters and a table with 24 cols as results. > This is roughly the code: > > > odbc::CallableStatement* cs = connection->prepareCall( > "{call donotKnow(?,?,?)}"); > > cs->setInt(1,assetid); > > cs->setString(2,assetype > ); > > cs->setDate(3,t); > > cs->registerOutParameter(1,4); > > odbc::ResultSet* rs = cs->executeQuery(); > > At runtime I receive the following error > > Error binding parameter: [Microsoft][ODBC SQL Server > Driver]Fonctionnalité optionnelle non implémentée > > The error occurs only if I add the output parameter... > > Any idea? > > Thanks > > > > > > ------------------------------------------------------------------------------ > Xperia(TM) PLAY > It's a major breakthrough. An authentic gaming > smartphone on the nation's most reliable network. > And it wants your games. > http://p.sf.net/sfu/verizon-sfdev > _______________________________________________ > libodbcxx-devel mailing list > lib...@li... > https://lists.sourceforge.net/lists/listinfo/libodbcxx-devel > > |
From: Pete <pe...@ka...> - 2011-04-05 08:26:08
|
Note that by default, libodbc treats all parameters as input/output. You only use registerOutParameter to register output only parameters. Setting the value is wrong. Also try: - using the correct sqlType in registerOutParameter, 4 is SQL_CHAR - placing the OUT parameter last in your stored procedure procedure Pete _____ From: simone pilozzi [mailto:sim...@gm...] Sent: Tuesday, 5 April 2011 7:12 p.m. To: lib...@li... Subject: [libodbcxx-devel] Error binding parameter: [Microsoft][ODBC SQL Server Driver]Fonctionnalité optionnelle non implémentée Hi all, I am runninng a stored procedure from a Visual C++ project using odbc++. The procedure has 3 input parameters and a table with 24 cols as results. This is roughly the code: odbc::CallableStatement* cs = connection->prepareCall( "{call donotKnow(?,?,?)}"); cs->setInt(1,assetid); cs->setString(2,assetype ); cs->setDate(3,t); cs->registerOutParameter(1,4); odbc::ResultSet* rs = cs->executeQuery(); At runtime I receive the following error Error binding parameter: [Microsoft][ODBC SQL Server Driver]Fonctionnalité optionnelle non implémentée The error occurs only if I add the output parameter... Any idea? Thanks |
From: simone p. <sim...@gm...> - 2011-04-05 07:12:01
|
Hi all, I am runninng a stored procedure from a Visual C++ project using odbc++. The procedure has 3 input parameters and a table with 24 cols as results. This is roughly the code: odbc::CallableStatement* cs = connection->prepareCall("{call donotKnow(?,?,?)}"); cs->setInt(1,assetid); cs->setString(2,assetype); cs->setDate(3,t); cs->registerOutParameter(1,4); odbc::ResultSet* rs = cs->executeQuery(); At runtime I receive the following error Error binding parameter: [Microsoft][ODBC SQL Server Driver]Fonctionnalité optionnelle non implémentée The error occurs only if I add the output parameter... Any idea? Thanks |
From: Srinivasan T <sri...@st...> - 2011-02-18 05:31:31
|
Hi, Further to my previous mail, libodbc++ fails in pthread_mutex_lock() and not in pthread_mutex_unlock(). Wrongly mentioned in my previous mail. Regards, Srinivasan On 02/18/2011 10:44 AM, Srinivasan T wrote: > Hi, > > I have linked statically libodbc++ (libodbc++-mt.a) with my CPP > application and connect to MySQL from various threads simultaneously > from my application. At some point my application crashes with the > following error, > > /terminate called after throwing an instance of 'odbc::SQLException' > what(): [libodbc++]: OS error, mutex lock failed > HY000 : [libodbc++]: OS error, mutex lock failed :: [Open DB] : IN DB > /home/test/Users/Srini/xxxxxxx/dbnamexxx terminate called recursively > HY000 : [libodbc++]: OS error, mutex lock failed :: [Open DB] : IN DB > ///home/test/Users/Srini/xxxxxxx/dbnamexxx //terminate called recursively > HY000 : [libodbc++]: OS error, mutex lock failed :: [Open DB] : IN DB > ///home/test/Users/Srini/xxxxxxx/dbnamexxx / > /Aborted > / > Seems the pthread_mutex_unlock() in src/threads.cpp fails with error > and libodbc throws exception and hence application crashes (running in > my application in debug mode). I have checked the return value of > pthread_mutex_unlock() and it is EINVAL (22) which means Invalid Argument. > > The details of my setup is as follows, > > OS : Cent OS 5.3 > libodbc++ : v0.2.3 > unixODBC : v2.2.15pre > MySQL Driver : v3.51.27 > MySQL Server : v5.1.39 > > My odbcinst.ini file is as follows, > > -------------------8<---------------------- > /[ODBC] > Trace = No > Trace File = /tmp/sql.log > Pooling = Yes > > [MySQL] > Description = > Driver = /usr/local/lib/libmyodbc3-3.51.27.so > Driver64 = > Setup = /usr/local/lib/libmyodbc3S-3.51.27.so > Setup64 = > UsageCount =1 > CPTimeout =300 > CPReuse =1 > Threading =0 > /------------------->8---------------------- > > My configure option for libodbc++ is as follows, > > /./configure --enable-static=yes > --with-odbc=/home/path/to/unixodbc/unixODBC-2.2.15pre/DriverManager/.libs/ > --enable-threads=yes/ > > I have also tested with libodbc++ v0.2.5 and still I face the same issue. > > Any help would be greatly appreciated. > > Regards, > Srini |
From: Srinivasan T <sri...@st...> - 2011-02-18 05:26:00
|
Hi, Further to my previous mail, libodbc++ fails in pthread_mutex_lock() and not in pthread_mutex_unlock(). Wrongly mentioned in my previous mail. Regards, Srinivasan -------- Original Message -------- Subject: pthread_mutex_lock fails Date: Fri, 18 Feb 2011 10:44:02 +0530 From: Srinivasan T <sri...@st...> To: lib...@li... Hi, I have linked statically libodbc++ (libodbc++-mt.a) with my CPP application and connect to MySQL from various threads simultaneously from my application. At some point my application crashes with the following error, /terminate called after throwing an instance of 'odbc::SQLException' what(): [libodbc++]: OS error, mutex lock failed HY000 : [libodbc++]: OS error, mutex lock failed :: [Open DB] : IN DB /home/test/Users/Srini/xxxxxxx/dbnamexxx terminate called recursively HY000 : [libodbc++]: OS error, mutex lock failed :: [Open DB] : IN DB ///home/test/Users/Srini/xxxxxxx/dbnamexxx //terminate called recursively HY000 : [libodbc++]: OS error, mutex lock failed :: [Open DB] : IN DB ///home/test/Users/Srini/xxxxxxx/dbnamexxx / /Aborted / Seems the pthread_mutex_unlock() in src/threads.cpp fails with error and libodbc throws exception and hence application crashes (running in my application in debug mode). I have checked the return value of pthread_mutex_unlock() and it is EINVAL (22) which means Invalid Argument. The details of my setup is as follows, OS : Cent OS 5.3 libodbc++ : v0.2.3 unixODBC : v2.2.15pre MySQL Driver : v3.51.27 MySQL Server : v5.1.39 My odbcinst.ini file is as follows, -------------------8<---------------------- /[ODBC] Trace = No Trace File = /tmp/sql.log Pooling = Yes [MySQL] Description = Driver = /usr/local/lib/libmyodbc3-3.51.27.so Driver64 = Setup = /usr/local/lib/libmyodbc3S-3.51.27.so Setup64 = UsageCount =1 CPTimeout =300 CPReuse =1 Threading =0 /------------------->8---------------------- My configure option for libodbc++ is as follows, /./configure --enable-static=yes --with-odbc=/home/path/to/unixodbc/unixODBC-2.2.15pre/DriverManager/.libs/ --enable-threads=yes/ I have also tested with libodbc++ v0.2.5 and still I face the same issue. Any help would be greatly appreciated. Regards, Srini |
From: Srinivasan T <sri...@st...> - 2011-02-18 05:17:34
|
Hi, I have linked statically libodbc++ (libodbc++-mt.a) with my CPP application and connect to MySQL from various threads simultaneously from my application. At some point my application crashes with the following error, /terminate called after throwing an instance of 'odbc::SQLException' what(): [libodbc++]: OS error, mutex lock failed HY000 : [libodbc++]: OS error, mutex lock failed :: [Open DB] : IN DB /home/test/Users/Srini/xxxxxxx/dbnamexxx terminate called recursively HY000 : [libodbc++]: OS error, mutex lock failed :: [Open DB] : IN DB ///home/test/Users/Srini/xxxxxxx/dbnamexxx //terminate called recursively HY000 : [libodbc++]: OS error, mutex lock failed :: [Open DB] : IN DB ///home/test/Users/Srini/xxxxxxx/dbnamexxx / /Aborted / Seems the pthread_mutex_unlock() in src/threads.cpp fails with error and libodbc throws exception and hence application crashes (running in my application in debug mode). I have checked the return value of pthread_mutex_unlock() and it is EINVAL (22) which means Invalid Argument. The details of my setup is as follows, OS : Cent OS 5.3 libodbc++ : v0.2.3 unixODBC : v2.2.15pre MySQL Driver : v3.51.27 MySQL Server : v5.1.39 My odbcinst.ini file is as follows, -------------------8<---------------------- /[ODBC] Trace = No Trace File = /tmp/sql.log Pooling = Yes [MySQL] Description = Driver = /usr/local/lib/libmyodbc3-3.51.27.so Driver64 = Setup = /usr/local/lib/libmyodbc3S-3.51.27.so Setup64 = UsageCount =1 CPTimeout =300 CPReuse =1 Threading =0 /------------------->8---------------------- My configure option for libodbc++ is as follows, /./configure --enable-static=yes --with-odbc=/home/path/to/unixodbc/unixODBC-2.2.15pre/DriverManager/.libs/ --enable-threads=yes/ I have also tested with libodbc++ v0.2.5 and still I face the same issue. Any help would be greatly appreciated. Regards, Srini |
From: Jan B. <jbr...@ya...> - 2011-01-28 07:41:01
|
Hello, Valgrind pointed me to a memory leak in preparedstatement.cpp: If 'this->_prepare();' throws, a Rowset has been created but is never freed since the destructor is not called. I'd propose to surround the _prepare()-call with a try-catch(...)-block to catch any exception, delete rowset_ and rethrow - but since I'm no committer I'd like to ask someone else to do so. Regards Jan |
From: Himawan, B. <BHi...@wm...> - 2011-01-24 15:42:19
|
Hi, I'm trying to use the prepared statement to set a bytea (bytearray) column in a postgres database. The query I was using worked fine until I added the setBytes call. In the postgres logs I see the query and it seems like the parameter for the column was not replaced by the bytes I set. It was still a "?". Are there any know issues with this call? Thanks Budyanto |
From: Bob H. <ra...@ba...> - 2011-01-13 11:20:17
|
From ChangeLog: * configure.ac: Always define HAVE_ISO_CXXLIB (ie, ODBCXX_HAVE_ISO_CXXLIB) in configure shell script (ie, non-Win32 platforms) * src/resultset.cpp: Fixed string declarations to work with unicode * src/errorhandler.cpp: Fixed string declarations to work with unicode * src/preparedstatement.cpp (_bindParams): Fixed more integer-to-pointer casts * include/odbc++/types.h: Added #include for stdlib.h which is required for unicode support code |
From: Bob H. <ra...@ba...> - 2010-12-14 14:30:56
|
From ChangeLog: * configure.ac: Always define HAVE_ISO_CXXLIB (ie, ODBCXX_HAVE_ISO_CXXLIB) in configure shell script (ie, non-Win32 platforms) * src/resultset.cpp: Fixed string declarations to work with unicode * src/errorhandler.cpp: Fixed string declarations to work with unicode * src/preparedstatement.cpp (_bindParams): Fixed more integer-to-pointer casts * include/odbc++/types.h: Added #include for stdlib.h which is required for unicode support code |
From: summa p. <sum...@ho...> - 2010-06-23 06:54:26
|
Hi friend, Currently am using visual 2005 express edition. i have some doubts. can u reply? can u send the link to download the odbc++ project. I already created one empty project and i have one cpp file and created Data source name. I need to connect Mysql database using odbc++ project. Can u tell the steps to connect the dataabse?? Advance thanks With Regards T.Boopathi Raja _________________________________________________________________ Hotmail has tools for the New Busy. Search, chat and e-mail from your inbox. http://www.windowslive.com/campaign/thenewbusy?ocid=PID28326::T:WLMTAGL:ON:WL:en-US:WM_HMP:042010_1 |
From: Pete <pe...@ka...> - 2010-06-21 04:08:49
|
Hi Andrey This seems to be an odbc driver issue. I'm not at all familiar with the TimesTen ODBC driver and unaware of anyone using it with odbc++. I found this link which seems to be discussing the same issue you're experiencing: http://www.developmentnow.com/g/113_2005_8_0_0_577222/Every-query-returns-S1 C00--optional-feature-not-implemented-HELP-.htm. You could also ask the unixODBC forum, they may have some answers. Pete _____ From: Andrey Kobtsev [mailto:and...@gm...] Sent: Thursday, 17 June 2010 6:09 p.m. To: lib...@li... Cc: Max Afanasiev; Sergey Popov Subject: [libodbcxx-devel] Bug: Unable to execute "select" query on OracleTimesTen driver Hi all, I have an exception when I try to execute simple "SELECT" query. Please help me to resolve this issue. The exception is: " Error fetching numeric statement option: [unixODBC][TimesTen][TimesTen 7.0.5.0.0 ODBC Driver]Driver not capable " Trace file as attached. My table "rating_test" is trivial: rating_test (iid integer, base_rate numeric(15,4), rating_zone_id integer) My code snippet is simple: //============================================================== /*...*/ std::string connection_parameters= "DSN=ocs_ttdb;UID=ocs_user;PWD=password"; std::auto_ptr<odbc::Connection> con ( odbc::DriverManager::getConnection(connection_parameters)); std::auto_ptr<odbc::Statement> stmt(con->createStatement()); stmt->setFetchSize(1); // some odd number std::auto_ptr<odbc::ResultSet> rs(stmt->executeQuery(ODBCXX_STRING_CONST("select iid from rating_test;"))); /*...*/ //============================================================== I guess the key is in attached trace file at ODBC][10057][SQLGetStmtAttr.c] [522] record: ... [ODBC][10057][SQLSetStmtAttr.c][670] Exit:[SQL_SUCCESS] [ODBC][10057][SQLGetStmtAttr.c][213] Entry: Statement = 0x1c184010 Attribute = SQL_ATTR_ROW_ARRAY_SIZE Value = 0x7fff5e94cc64 Buffer Length = -5 StrLen = 0x7fff5e94cc60 [ODBC][10057][SQLGetStmtAttr.c][522] Exit:[SQL_ERROR] DIAG [S1C00] [TimesTen][TimesTen 7.0.5.0.0 ODBC Driver]Driver not capable ... Thanks, Andrey. |
From: Pete <pe...@ka...> - 2010-06-21 03:52:06
|
Hi Raja Basically you need to follow these simple steps: 1. Make sure you have a C++ compiler (for the rest I assume you use VS 2008 EE and installed it in the default folder) 2. open a command shell (DOS console) 3. navigate to console to the libodbc++\win32 folder 4. setup your environment by executing: "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat" 5. now to build say the debug-lib you type: nmake -f makefile.w32 CFG=debug-lib (Note that if you don't supply the CFG argument you get a list of valid options) 6. once the library is built you can create a new project and create your first test odbc++ test program (use some of the examples included). Just make sure you libodbc++/include is in the include search path and you link with the library you've built in 5 above and make sure compiler settings are compatible. Pete _____ From: summa prize [mailto:sum...@ho...] Sent: Friday, 18 June 2010 4:40 p.m. To: lib...@li... Subject: [libodbcxx-devel] VC++ to ODBC Connection Hi All. Can anyone help, how to connect vc++ to libodbc++????????. With Regards T.Boopathi Raja _____ Hotmail is redefining busy with tools for the New Busy. Get more from your inbox. See how. <http://www.windowslive.com/campaign/thenewbusy?ocid=PID28326::T:WLMTAGL:ON: WL:en-US:WM_HMP:042010_2> |
From: Pete <pe...@ka...> - 2010-06-21 03:49:39
|
Further to my previous comment, you could try and debug into the SQLGetStmtAttr function which is called libodbc++. Knowing the call failes isn't enough, you need to know what the arguments are in the call. The cause could be something simple like an ODBC/SQL type mismatch because nobody has used the TimesTen driver so far. _____ From: Andrey Kobtsev [mailto:and...@gm...] Sent: Thursday, 17 June 2010 6:09 p.m. To: lib...@li... Cc: Max Afanasiev; Sergey Popov Subject: [libodbcxx-devel] Bug: Unable to execute "select" query on OracleTimesTen driver Hi all, I have an exception when I try to execute simple "SELECT" query. Please help me to resolve this issue. The exception is: " Error fetching numeric statement option: [unixODBC][TimesTen][TimesTen 7.0.5.0.0 ODBC Driver]Driver not capable " Trace file as attached. My table "rating_test" is trivial: rating_test (iid integer, base_rate numeric(15,4), rating_zone_id integer) My code snippet is simple: //============================================================== /*...*/ std::string connection_parameters= "DSN=ocs_ttdb;UID=ocs_user;PWD=password"; std::auto_ptr<odbc::Connection> con ( odbc::DriverManager::getConnection(connection_parameters)); std::auto_ptr<odbc::Statement> stmt(con->createStatement()); stmt->setFetchSize(1); // some odd number std::auto_ptr<odbc::ResultSet> rs(stmt->executeQuery(ODBCXX_STRING_CONST("select iid from rating_test;"))); /*...*/ //============================================================== I guess the key is in attached trace file at ODBC][10057][SQLGetStmtAttr.c] [522] record: ... [ODBC][10057][SQLSetStmtAttr.c][670] Exit:[SQL_SUCCESS] [ODBC][10057][SQLGetStmtAttr.c][213] Entry: Statement = 0x1c184010 Attribute = SQL_ATTR_ROW_ARRAY_SIZE Value = 0x7fff5e94cc64 Buffer Length = -5 StrLen = 0x7fff5e94cc60 [ODBC][10057][SQLGetStmtAttr.c][522] Exit:[SQL_ERROR] DIAG [S1C00] [TimesTen][TimesTen 7.0.5.0.0 ODBC Driver]Driver not capable ... Thanks, Andrey. |