You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(23) |
Sep
(6) |
Oct
(2) |
Nov
(2) |
Dec
(5) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
|
Feb
(14) |
Mar
(16) |
Apr
(14) |
May
(25) |
Jun
(38) |
Jul
(22) |
Aug
(39) |
Sep
(3) |
Oct
(13) |
Nov
(47) |
Dec
(3) |
2003 |
Jan
(38) |
Feb
(39) |
Mar
(24) |
Apr
(57) |
May
(30) |
Jun
|
Jul
(39) |
Aug
(90) |
Sep
(41) |
Oct
(141) |
Nov
(158) |
Dec
(137) |
2004 |
Jan
(86) |
Feb
(169) |
Mar
(100) |
Apr
(83) |
May
(94) |
Jun
(77) |
Jul
(85) |
Aug
(54) |
Sep
(45) |
Oct
(36) |
Nov
(42) |
Dec
(70) |
2005 |
Jan
(46) |
Feb
(44) |
Mar
(50) |
Apr
(73) |
May
(90) |
Jun
(87) |
Jul
(41) |
Aug
(47) |
Sep
(28) |
Oct
(23) |
Nov
(44) |
Dec
(81) |
2006 |
Jan
(21) |
Feb
(9) |
Mar
(82) |
Apr
(14) |
May
(109) |
Jun
(175) |
Jul
(188) |
Aug
(44) |
Sep
(5) |
Oct
(47) |
Nov
(15) |
Dec
(34) |
2007 |
Jan
(75) |
Feb
(24) |
Mar
(30) |
Apr
(4) |
May
(28) |
Jun
(9) |
Jul
(13) |
Aug
(13) |
Sep
(29) |
Oct
(15) |
Nov
(19) |
Dec
(12) |
2008 |
Jan
(7) |
Feb
(19) |
Mar
(1) |
Apr
(7) |
May
(13) |
Jun
(19) |
Jul
(17) |
Aug
(29) |
Sep
(15) |
Oct
(37) |
Nov
(18) |
Dec
(29) |
2009 |
Jan
(23) |
Feb
(12) |
Mar
(8) |
Apr
(16) |
May
(11) |
Jun
(1) |
Jul
(2) |
Aug
(1) |
Sep
|
Oct
(9) |
Nov
(17) |
Dec
(31) |
2010 |
Jan
(15) |
Feb
(5) |
Mar
(4) |
Apr
(8) |
May
(1) |
Jun
(5) |
Jul
(17) |
Aug
(2) |
Sep
(12) |
Oct
(33) |
Nov
(14) |
Dec
(24) |
2011 |
Jan
(11) |
Feb
(2) |
Mar
(34) |
Apr
(11) |
May
(12) |
Jun
(3) |
Jul
(6) |
Aug
(11) |
Sep
(10) |
Oct
(1) |
Nov
(8) |
Dec
|
2012 |
Jan
(16) |
Feb
(2) |
Mar
|
Apr
(2) |
May
(6) |
Jun
(2) |
Jul
(7) |
Aug
|
Sep
|
Oct
(7) |
Nov
(22) |
Dec
(2) |
2013 |
Jan
(1) |
Feb
(24) |
Mar
(15) |
Apr
(2) |
May
(3) |
Jun
|
Jul
(2) |
Aug
|
Sep
(2) |
Oct
(6) |
Nov
(10) |
Dec
|
2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
|
Dec
(5) |
2015 |
Jan
(1) |
Feb
(4) |
Mar
(3) |
Apr
(3) |
May
|
Jun
(3) |
Jul
(1) |
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
(1) |
2016 |
Jan
(1) |
Feb
(9) |
Mar
(4) |
Apr
|
May
(6) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(7) |
Nov
(13) |
Dec
|
2017 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
(12) |
Oct
(4) |
Nov
|
Dec
|
2018 |
Jan
(6) |
Feb
|
Mar
|
Apr
|
May
(6) |
Jun
|
Jul
(9) |
Aug
(4) |
Sep
(2) |
Oct
|
Nov
|
Dec
|
2019 |
Jan
(1) |
Feb
|
Mar
(4) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2020 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
(3) |
Aug
|
Sep
|
Oct
(3) |
Nov
|
Dec
|
2021 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(4) |
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2023 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2025 |
Jan
|
Feb
(2) |
Mar
|
Apr
(2) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Alexander P. <ale...@re...> - 2009-02-18 19:01:43
|
Martijn Tonies wrote: > Hello Alexander, > > > I've tried a different componentset and it browses data just > fine in Delphi. > > However, I ran into a new problem -- > > I have this table with BLOBs, I put down an odbc query > component in Delphi and set "UniDirectional" to True. > > When I want to activate the query component, it calls > SQLExecute and then doesn't return for quite a while. > Meanwhile, the memory usage of the application goes > -way up- ... and it ends with an Access Violation error. > > Is the driver fetching all rows despite the component > not doing that? > > > Hello Martijn! What components do you use? I think you need the Cursor type = ForwardOnly (else the driver fetching all rows) . Regards, Alexander |
From: bill l. <cbi...@gm...> - 2009-02-18 14:55:16
|
On Wed, 18 Feb 2009, Martijn Tonies wrote: > I'm not retrieving anything yet - > > As far as I can see, it's the call to SQLExecute that stalls. If it column bind a blob field, memory buffer is allocated on local machine before sqlgetdata. May be you can do odbc trace for diagnosis. Good luck :-) -- regards, ==================================================== GPG key 1024D/4434BAB3 2008-08-24 gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3 唐詩286 張祜 題金陵渡 金陵津渡小山樓 一宿行人自可愁 潮落夜江斜月裡 兩三星火是瓜州 |
From: Martijn T. <m.t...@up...> - 2009-02-18 14:44:15
|
Hello Bill, > On Wed, 18 Feb 2009, Martijn Tonies wrote: >> When I want to activate the query component, it calls >> SQLExecute and then doesn't return for quite a while. >> Meanwhile, the memory usage of the application goes >> -way up- ... and it ends with an Access Violation error. >> >> Is the driver fetching all rows despite the component >> not doing that? > > Did you set a smaller buffer for sqlgetdata and retrieve blob data > block after block? AFAICS you cannot bind a blob field using its > declared size (2GB or more?). I'm not retrieving anything yet - As far as I can see, it's the call to SQLExecute that stalls. With regards, Martijn Tonies Upscene Productions http://www.upscene.com Download Database Workbench for Oracle, MS SQL Server, Sybase SQL Anywhere, MySQL, InterBase, NexusDB and Firebird! Database questions? Check the forum: http://www.databasedevelopmentforum.com |
From: bill l. <cbi...@gm...> - 2009-02-18 14:39:32
|
On Wed, 18 Feb 2009, Martijn Tonies wrote: > When I want to activate the query component, it calls > SQLExecute and then doesn't return for quite a while. > Meanwhile, the memory usage of the application goes > -way up- ... and it ends with an Access Violation error. > > Is the driver fetching all rows despite the component > not doing that? Did you set a smaller buffer for sqlgetdata and retrieve blob data block after block? AFAICS you cannot bind a blob field using its declared size (2GB or more?). -- regards, ==================================================== GPG key 1024D/4434BAB3 2008-08-24 gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3 唐詩169 僧皎然 尋陸鴻漸不遇 移家雖帶郭 野徑入桑麻 近種籬邊菊 秋來未著花 扣門無犬吠 欲去問西家 報到山中去 歸來每日斜 |
From: Martijn T. <m.t...@up...> - 2009-02-18 14:13:52
|
Hello Alexander, I've tried a different componentset and it browses data just fine in Delphi. However, I ran into a new problem -- I have this table with BLOBs, I put down an odbc query component in Delphi and set "UniDirectional" to True. When I want to activate the query component, it calls SQLExecute and then doesn't return for quite a while. Meanwhile, the memory usage of the application goes -way up- ... and it ends with an Access Violation error. Is the driver fetching all rows despite the component not doing that? With regards, Martijn Tonies Upscene Productions http://www.upscene.com Download Database Workbench for Oracle, MS SQL Server, Sybase SQL Anywhere, MySQL, InterBase, NexusDB and Firebird! Database questions? Check the forum: http://www.databasedevelopmentforum.com |
From: Alexander P. <ale...@re...> - 2009-02-17 13:22:08
|
Jorge Andrés Brugger wrote: > It´s a RC2 build available? Maybe it´s time to build one? ;) > > Regards > > Hi, Jorge! Well.., RC2 is not ready now (at least some fixes are necessary). I have certain problems with a free time on driver development now, the world financial crisis... sorry. But of course I will try to make something in that direction in the near future ;-) . Regards, Alexander |
From: Jorge A. B. <li...@da...> - 2009-02-17 12:06:47
|
It´s a RC2 build available? Maybe it´s time to build one? ;) Regards -- Jorge Andrés Brugger Informática DASU - Obra Social del Personal de la Universidad Nacional de la Patagonia Comodoro Rivadavia, Chubut, Argentina Teléfono (0297) 446-4444 int. 103 Correo electrónico: jbr...@da... Website: www.dasu.com.ar |
From: Alexander P. <ale...@re...> - 2009-02-12 10:08:18
|
Martijn Tonies wrote: > I noticed HY009 could signal "invalid use of null pointer", is that > correct? Generally HY009 is an invalid argument value with usage a null pointer. >> What ODBC API function is failed? It is not a message of Firebird ODBC >> driver (but "Fetch type out of range" is a message of driver. By the way >> Firebird ODBC driver supports only FORWARD ONLY and STATIC cursors in >> full). >> > > What causes "fetch type out of range"? > In SQLFetchScroll or SQLExtendedFetch, the wrong usage of an operation type: if( cursorType == SQL_CURSOR_FORWARD_ONLY && orientation != SQL_FETCH_NEXT ) return sqlReturn (SQL_ERROR, "HY106", "Fetch type out of range"); Regards, Alexander |
From: Martijn T. <m.t...@up...> - 2009-02-11 14:14:07
|
Hi Alexander, > Alexander Potapchenko wrote: >> What ODBC API function is failed? It is not a message of Firebird ODBC >> driver (but "Fetch type out of range" is a message of driver. By the way >> Firebird ODBC driver supports only FORWARD ONLY and STATIC cursors in >> full). >> > Sorry, I have found this... > > > DBW3 830-820 ENTER SQLGetData > HSTMT 03232190 > UWORD 0 > SWORD -2 <SQL_C_BINARY> > PTR <unknown type> > SQLLEN 0 > SQLLEN * 0x0578FE68 > > DBW3 830-820 EXIT SQLGetData with return code -1 > (SQL_ERROR) > HSTMT 03232190 > UWORD 0 > SWORD -2 <SQL_C_BINARY> > PTR <unknown type> > SQLLEN 0 > SQLLEN * 0x0578FE68 > > DIAG [HY009] [Microsoft][ODBC Driver Manager] Invalid argument > value (0) I noticed HY009 could signal "invalid use of null pointer", is that correct? >What ODBC API function is failed? It is not a message of Firebird ODBC >driver (but "Fetch type out of range" is a message of driver. By the way >Firebird ODBC driver supports only FORWARD ONLY and STATIC cursors in >full). What causes "fetch type out of range"? With regards, Martijn Tonies Upscene Productions http://www.upscene.com Download Database Workbench for Oracle, MS SQL Server, Sybase SQL Anywhere, MySQL, InterBase, NexusDB and Firebird! Database questions? Check the forum: http://www.databasedevelopmentforum.com |
From: Martijn T. <m.t...@up...> - 2009-01-28 18:23:24
|
----- Original Message ----- From: "Alexander Potapchenko" <ale...@re...> To: <fir...@li...> Sent: Wednesday, January 28, 2009 4:23 PM Subject: Re: [Firebird-odbc-devel] Driver issues > Martijn Tonies wrote: >>> DBW3 830-820 ENTER SQLGetData >>> HSTMT 03232190 >>> UWORD 0 >>> SWORD -2 <SQL_C_BINARY> >>> PTR <unknown type> >>> SQLLEN 0 >>> SQLLEN * 0x0578FE68 >>> >>> DBW3 830-820 EXIT SQLGetData with return code -1 >>> (SQL_ERROR) >>> HSTMT 03232190 >>> UWORD 0 >>> SWORD -2 <SQL_C_BINARY> >>> PTR <unknown type> >>> SQLLEN 0 >>> SQLLEN * 0x0578FE68 >>> >>> DIAG [HY009] [Microsoft][ODBC Driver Manager] Invalid argument >>> value (0) >>> >> >> In Delphi, I'm using the ODBCExpress components, what would raise >> this error? >> > It is not a driver of RDBMS. > The call stack at the level of the Firebird ODBC driver: > Preparing statement: > select > ID_PRECE > from > "PRECES" > order by > "ID_PRECE" > SQLFreeStmt > SQLExecute > SQLSetStmtAttrW > SQL_ATTR_ROWS_FETCHED_PTR = 65213480 : 03E31428 > SQLNumResultCols > SQLDescribeColW > Column 01 ID_PRECE has type 004, scale 000, > precision 010 > SQLColAttributeW > SQLBindCol > SQLColAttributeW > SQLSetStmtAttrW > SQLFetch > SQLSetPos > > The next step is a call of SQLGetData function, but there are problems > (maybe wrong parameters, null pointers) at a upward level (maybe ODBC > driver manager). > It is similar to problems in access components(ODBCExpress). You can try > another components for a work with ODBC (AnyDac free edition, > http://da-soft.com for example) too. Replacing the componentset is not an option. Exactly this code works for other ODBC drivers (although not all, as you have shown). I can detect features/ODBC driver functionality though, so if you can figure out what's wrong, I can try and work around it. With regards, Martijn Tonies Upscene Productions http://www.upscene.com Download Database Workbench for Oracle, MS SQL Server, Sybase SQL Anywhere, MySQL, InterBase, NexusDB and Firebird! Database questions? Check the forum: http://www.databasedevelopmentforum.com |
From: Alexander P. <ale...@re...> - 2009-01-28 15:22:26
|
Martijn Tonies wrote: >> DBW3 830-820 ENTER SQLGetData >> HSTMT 03232190 >> UWORD 0 >> SWORD -2 <SQL_C_BINARY> >> PTR <unknown type> >> SQLLEN 0 >> SQLLEN * 0x0578FE68 >> >> DBW3 830-820 EXIT SQLGetData with return code -1 >> (SQL_ERROR) >> HSTMT 03232190 >> UWORD 0 >> SWORD -2 <SQL_C_BINARY> >> PTR <unknown type> >> SQLLEN 0 >> SQLLEN * 0x0578FE68 >> >> DIAG [HY009] [Microsoft][ODBC Driver Manager] Invalid argument >> value (0) >> > > In Delphi, I'm using the ODBCExpress components, what would raise > this error? > It is not a driver of RDBMS. The call stack at the level of the Firebird ODBC driver: Preparing statement: select ID_PRECE from "PRECES" order by "ID_PRECE" SQLFreeStmt SQLExecute SQLSetStmtAttrW SQL_ATTR_ROWS_FETCHED_PTR = 65213480 : 03E31428 SQLNumResultCols SQLDescribeColW Column 01 ID_PRECE has type 004, scale 000, precision 010 SQLColAttributeW SQLBindCol SQLColAttributeW SQLSetStmtAttrW SQLFetch SQLSetPos The next step is a call of SQLGetData function, but there are problems (maybe wrong parameters, null pointers) at a upward level (maybe ODBC driver manager). It is similar to problems in access components(ODBCExpress). You can try another components for a work with ODBC (AnyDac free edition, http://da-soft.com for example) too. Alexander |
From: Martijn T. <m.t...@up...> - 2009-01-28 14:52:57
|
Hello Alexander, > Alexander Potapchenko wrote: >> What ODBC API function is failed? It is not a message of Firebird ODBC >> driver (but "Fetch type out of range" is a message of driver. By the way >> Firebird ODBC driver supports only FORWARD ONLY and STATIC cursors in >> full). >> > Sorry, I have found this... > > > DBW3 830-820 ENTER SQLGetData > HSTMT 03232190 > UWORD 0 > SWORD -2 <SQL_C_BINARY> > PTR <unknown type> > SQLLEN 0 > SQLLEN * 0x0578FE68 > > DBW3 830-820 EXIT SQLGetData with return code -1 > (SQL_ERROR) > HSTMT 03232190 > UWORD 0 > SWORD -2 <SQL_C_BINARY> > PTR <unknown type> > SQLLEN 0 > SQLLEN * 0x0578FE68 > > DIAG [HY009] [Microsoft][ODBC Driver Manager] Invalid argument > value (0) In Delphi, I'm using the ODBCExpress components, what would raise this error? With regards, Martijn Tonies Upscene Productions http://www.upscene.com Download Database Workbench for Oracle, MS SQL Server, Sybase SQL Anywhere, MySQL, InterBase, NexusDB and Firebird! Database questions? Check the forum: http://www.databasedevelopmentforum.com |
From: Alexander P. <ale...@re...> - 2009-01-28 14:48:04
|
Alexander Potapchenko wrote: > What ODBC API function is failed? It is not a message of Firebird ODBC > driver (but "Fetch type out of range" is a message of driver. By the way > Firebird ODBC driver supports only FORWARD ONLY and STATIC cursors in full). > Sorry, I have found this... DBW3 830-820 ENTER SQLGetData HSTMT 03232190 UWORD 0 SWORD -2 <SQL_C_BINARY> PTR <unknown type> SQLLEN 0 SQLLEN * 0x0578FE68 DBW3 830-820 EXIT SQLGetData with return code -1 (SQL_ERROR) HSTMT 03232190 UWORD 0 SWORD -2 <SQL_C_BINARY> PTR <unknown type> SQLLEN 0 SQLLEN * 0x0578FE68 DIAG [HY009] [Microsoft][ODBC Driver Manager] Invalid argument value (0) Alexander |
From: Alexander P. <ale...@re...> - 2009-01-28 14:39:25
|
Martijn Tonies wrote: > Hmm, I tried several others MS SQL, MS Access, Oracle (via MS driver) > and they worked fine. Care to let me know the reasons? :-) > > Oracle 11g Select * from table - [Oracle][ODBC]Invalid descriptor index <0>. MySQL 5 (mysql-connector-odbc-5.1.5-win32) Select * from table - [MySQL][ODBC 5.1 Driver][mysqld-5.1.30-community]Optional feature not implemented Firebird - [Microsoft][ODBC Driver Manager] Invalid argument value. Via ADO(OLE DB for ODBC) - no problems. By the way in IBExpert (Tools\ODBC Viewer) I do not have troubles too. > You cannot from the program itself, I modified the code for that. > > Didn't you get a " [Microsoft][ODBC Driver Manager] Invalid argument value " > when trying? That's what I got at first before I modified the cursor type. > What ODBC API function is failed? It is not a message of Firebird ODBC driver (but "Fetch type out of range" is a message of driver. By the way Firebird ODBC driver supports only FORWARD ONLY and STATIC cursors in full). Regards, Alexander |
From: Martijn T. <m.t...@up...> - 2009-01-28 12:31:47
|
Hello Alexander, >>>> I've been experimenting with the Firebird ODBC driver in >>>> Database Workbench and try to use it, however, I get these >>>> error messages: >>>> >>>> Do a "select * from table order by pk_columns": >>>> >>>> [Microsoft][ODBC Driver Manager] Invalid argument value >>>> >>>> When using a different cursor type (code modified), I get: >>>> [Microsoft][ODBC Driver Manager] Fetch type out of range >>>> >>>> >>>> What is the cause for this? >>>> >>> What driver do you use? ODBC driver RC1 2.0.0.148? If it is reproduced >>> on this driver I will look at what is the problem. >>> >> Next, use the ADO/ODBC Explorer from the Tools menu. >> >> >> > I have found a very interesting thing, this program can not get data > from different sources (I tried Oracle, MySQL, Firebird ODBC drivers) > but for different reasons. Hmm, I tried several others MS SQL, MS Access, Oracle (via MS driver) and they worked fine. Care to let me know the reasons? :-) > Probably this ODBC tool is enough crude. > I have looked at Firebird ODBC under debug but I have not seen any > problems in the driver by operating through this program. The error > "Fetch type out of range" is more interesting but I did not understand > how I can modify cursor type. Please help me in this. You cannot from the program itself, I modified the code for that. Didn't you get a " [Microsoft][ODBC Driver Manager] Invalid argument value " when trying? That's what I got at first before I modified the cursor type. With regards, Martijn Tonies Upscene Productions http://www.upscene.com Download Database Workbench for Oracle, MS SQL Server, Sybase SQL Anywhere, MySQL, InterBase, NexusDB and Firebird! Database questions? Check the forum: http://www.databasedevelopmentforum.com |
From: Alexander P. <ale...@re...> - 2009-01-28 12:26:50
|
Martijn Tonies wrote: > Hello Alexander, > > >>> I've been experimenting with the Firebird ODBC driver in >>> Database Workbench and try to use it, however, I get these >>> error messages: >>> >>> Do a "select * from table order by pk_columns": >>> >>> [Microsoft][ODBC Driver Manager] Invalid argument value >>> >>> When using a different cursor type (code modified), I get: >>> [Microsoft][ODBC Driver Manager] Fetch type out of range >>> >>> >>> What is the cause for this? >>> >> What driver do you use? ODBC driver RC1 2.0.0.148? If it is reproduced >> on this driver I will look at what is the problem. >> > Next, use the ADO/ODBC Explorer from the Tools menu. > > > I have found a very interesting thing, this program can not get data from different sources (I tried Oracle, MySQL, Firebird ODBC drivers) but for different reasons. Probably this ODBC tool is enough crude. I have looked at Firebird ODBC under debug but I have not seen any problems in the driver by operating through this program. The error "Fetch type out of range" is more interesting but I did not understand how I can modify cursor type. Please help me in this. Regards, Alexander |
From: Martijn T. <m.t...@up...> - 2009-01-28 10:08:45
|
Hello Alexander, >> I've been experimenting with the Firebird ODBC driver in >> Database Workbench and try to use it, however, I get these >> error messages: >> >> Do a "select * from table order by pk_columns": >> >> [Microsoft][ODBC Driver Manager] Invalid argument value >> >> When using a different cursor type (code modified), I get: >> [Microsoft][ODBC Driver Manager] Fetch type out of range >> >> >> What is the cause for this? > What driver do you use? ODBC driver RC1 2.0.0.148? If it is reproduced > on this driver I will look at what is the problem. Yes, that's the version I'm using, sorry, should have mentioned that. > Where I can download the version of Database Workbench such as yours? www.upscene.com - download the trial if you like. Next, use the ADO/ODBC Explorer from the Tools menu. Hope this helps. With regards, Martijn Tonies Upscene Productions http://www.upscene.com Download Database Workbench for Oracle, MS SQL Server, Sybase SQL Anywhere, MySQL, InterBase, NexusDB and Firebird! Database questions? Check the forum: http://www.databasedevelopmentforum.com |
From: Alexander P. <ale...@re...> - 2009-01-28 09:42:51
|
Martijn Tonies wrote: > Hi, > > I've been experimenting with the Firebird ODBC driver in > Database Workbench and try to use it, however, I get these > error messages: > > Do a "select * from table order by pk_columns": > > [Microsoft][ODBC Driver Manager] Invalid argument value > > When using a different cursor type (code modified), I get: > [Microsoft][ODBC Driver Manager] Fetch type out of range > > > What is the cause for this? What driver do you use? ODBC driver RC1 2.0.0.148? If it is reproduced on this driver I will look at what is the problem. Where I can download the version of Database Workbench such as yours? Regards, Alexander |
From: Martijn T. <m.t...@up...> - 2009-01-28 09:07:23
|
Hi, I've been experimenting with the Firebird ODBC driver in Database Workbench and try to use it, however, I get these error messages: Do a "select * from table order by pk_columns": [Microsoft][ODBC Driver Manager] Invalid argument value When using a different cursor type (code modified), I get: [Microsoft][ODBC Driver Manager] Fetch type out of range What is the cause for this? With regards, Martijn Tonies Upscene Productions http://www.upscene.com Download Database Workbench for Oracle, MS SQL Server, Sybase SQL Anywhere, MySQL, InterBase, NexusDB and Firebird! Database questions? Check the forum: http://www.databasedevelopmentforum.com |
From: bill l. <cbi...@gm...> - 2009-01-21 05:57:40
|
On Tue, 20 Jan 2009, Hauser, Karsten wrote: > I've tried to create the same scenario with a connection from oracle to mysql. By applying the statement: > ------------ > DECLARE > l_nNR NUMBER := 1; > l_strPuffer VARCHAR2(2000); > begin > SELECT "first_name" INTO l_strPuffer > FROM EMPLOYEE@myodbc > WHERE "employee_id" = l_nNR; > end; > ---------- > which forces the ODBC-Driver (or Oracle.. I don't know) to use bindings I got the following trace-part: > ---------- > dg4odbcMYODBC ( 12ac-f20 EXIT SQLPrepare with return code 0 (SQL_SUCCESS) > HSTMT 01B51960 > UCHAR * 0x01E169F4 [ 66] "SELECT A1.`first_name` FROM `EMPLOYEE` A1 WHERE A1.`employee_id`=?" > SDWORD 66 > > dg4odbcMYODBC ( 12ac-f20 ENTER SQLNumResultCols > HSTMT 01B51960 > SWORD * 0x01E002E8 > > dg4odbcMYODBC ( 12ac-f20 EXIT SQLNumResultCols with return code 0 (SQL_SUCCESS) > HSTMT 01B51960 > SWORD * 0x01E002E8 (1) > > dg4odbcMYODBC ( 12ac-f20 ENTER SQLBindParameter > HSTMT 01B51960 > UWORD 1 > SWORD 1 <SQL_PARAM_INPUT> > SWORD 1 <SQL_C_CHAR> > SWORD 3 <SQL_DECIMAL> > SQLULEN 1 > SWORD 0 > PTR 0x01E16830 > SQLLEN 65 > SQLLEN * 0x01E0F2E8 > ---------- > > You see, that oracle here also detects the col-type SQL_C_CHAR, whereas the original type of the column is numeric. The statement delivers the correct solution.. > IIRC odbc itself can not deduce data type for input parameter. All calls to odbc api as what you got > dg4odbcMYODBC ( 12ac-f20 EXIT SQLPrepare with return code 0 (SQL_SUCCESS) > dg4odbcMYODBC ( 12ac-f20 ENTER SQLNumResultCols > dg4odbcMYODBC ( 12ac-f20 EXIT SQLNumResultCols with return code 0 (SQL_SUCCESS) > dg4odbcMYODBC ( 12ac-f20 ENTER SQLBindParameter were issued by another process such as your orcale databench ide or application program. So it depends on the cleverness of the calling party and not odbc to give the correct binding. In the above trace, you can see that the calling party actually never query the characteristics of parameters, but instead issue the sqlbindparameter directly. I guess the calling program had parsed the sql statement itself or otherwise, therefore knowing that it needed conversion. I regard it as an issue in oracle (but I've never used orcale). -- regards, ==================================================== GPG key 1024D/4434BAB3 2008-08-24 gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3 唐詩308 韋莊 金陵圖 江雨霏霏江草齊 六朝如夢鳥空啼 無情最是臺城柳 依舊煙籠十里堤 |
From: Alexander P. <ale...@re...> - 2009-01-20 19:21:29
|
Hauser, Karsten wrote: > I've tried several things with the sources of the ODBC Driver (static replacing SQL_C_CHAR with SQL_C_DOUBLE as a simple test-> not working.. firebird says: no data found). Is there any documentation over the code of the ODBC Driver? MSDN - http://msdn.microsoft.com/en-us/library/ms714177.aspx > I would know where Oracle jumps into the code.. > SQLColAttribute? I found that other functions like this are traced, so I think that Oracle use another function. > SQLDescribeParam/SQLDescribeCol probably. Your error is happened on the Firebird server level (in conversion), but SQL_C_CHAR instead of SQL_C_DOUBLE in SQLBindParameter leads to such results. I have seen MySql, the query: select id from table where id = 'empty string or text' is executed without errors, but it is impossible in Firebird without CAST. Alexander -- Alexander Potapchenko http://www.red-soft.biz Senior developer |
From: Hauser, K. <Kar...@ib...> - 2009-01-20 17:15:10
|
I've tried to create the same scenario with a connection from oracle to mysql. By applying the statement: ------------ DECLARE l_nNR NUMBER := 1; l_strPuffer VARCHAR2(2000); begin SELECT "first_name" INTO l_strPuffer FROM EMPLOYEE@myodbc WHERE "employee_id" = l_nNR; end; ---------- which forces the ODBC-Driver (or Oracle.. I don't know) to use bindings I got the following trace-part: ---------- dg4odbcMYODBC ( 12ac-f20 EXIT SQLPrepare with return code 0 (SQL_SUCCESS) HSTMT 01B51960 UCHAR * 0x01E169F4 [ 66] "SELECT A1.`first_name` FROM `EMPLOYEE` A1 WHERE A1.`employee_id`=?" SDWORD 66 dg4odbcMYODBC ( 12ac-f20 ENTER SQLNumResultCols HSTMT 01B51960 SWORD * 0x01E002E8 dg4odbcMYODBC ( 12ac-f20 EXIT SQLNumResultCols with return code 0 (SQL_SUCCESS) HSTMT 01B51960 SWORD * 0x01E002E8 (1) dg4odbcMYODBC ( 12ac-f20 ENTER SQLBindParameter HSTMT 01B51960 UWORD 1 SWORD 1 <SQL_PARAM_INPUT> SWORD 1 <SQL_C_CHAR> SWORD 3 <SQL_DECIMAL> SQLULEN 1 SWORD 0 PTR 0x01E16830 SQLLEN 65 SQLLEN * 0x01E0F2E8 ---------- You see, that oracle here also detects the col-type SQL_C_CHAR, whereas the original type of the column is numeric. The statement delivers the correct solution.. I've tried several things with the sources of the ODBC Driver (static replacing SQL_C_CHAR with SQL_C_DOUBLE as a simple test-> not working.. firebird says: no data found). Is there any documentation over the code of the ODBC Driver? I would know where Oracle jumps into the code.. SQLColAttribute? I found that other functions like this are traced, so I think that Oracle use another function. -----Ursprüngliche Nachricht----- Von: Alexander Potapchenko [mailto:ale...@re...] Gesendet: Donnerstag, 15. Januar 2009 01:12 An: fir...@li... Betreff: Re: [Firebird-odbc-devel] selecting from Oracle 11g to firebird Nikolay Samofatov wrote: > Alexander, > > Oracle is not quite easy when it comes to numeric data types. Native > numeric in Oracle has 38 decimal digits, and as such can not always be > represented as SQL_INTEGER. > Can you take an Oracle instance, and see what is going on when using > Firebird ODBC driver in the way described? This way we may let the users > from bank's IT department use our Firebird data warehousing databases > from their Oracle environment. > Yes, SQL_DOUBLE is a correctly data type in a general case for numeric. The main question is how Oracle detects parameters type for ODBC functions such as SQLBindParameter, SQLBindCol... I think it must call SQLColAttribute for this. I did not try to use Firebird ODBC driver in Oracle as yet. Alexander -- Alexander Potapchenko Senior developer ------------------------------------------------------------------------------ This SF.net email is sponsored by: SourcForge Community SourceForge wants to tell your story. http://p.sf.net/sfu/sf-spreadtheword _______________________________________________ Firebird-odbc-devel mailing list Fir...@li... https://lists.sourceforge.net/lists/listinfo/firebird-odbc-devel ------------------------------------------------------------------------------------------------------------ IBYKUS AG für Informationstechnologie, Erfurt / HRB 108616 - D-Jena / Vorstand: Helmut C. Henkel, Dr. Lutz Richter / Vorsitzender des Aufsichtsrates: Dr. Frieder Schäuble |
From: Alexander P. <ale...@re...> - 2009-01-15 00:11:45
|
Nikolay Samofatov wrote: > Alexander, > > Oracle is not quite easy when it comes to numeric data types. Native > numeric in Oracle has 38 decimal digits, and as such can not always be > represented as SQL_INTEGER. > Can you take an Oracle instance, and see what is going on when using > Firebird ODBC driver in the way described? This way we may let the users > from bank's IT department use our Firebird data warehousing databases > from their Oracle environment. > Yes, SQL_DOUBLE is a correctly data type in a general case for numeric. The main question is how Oracle detects parameters type for ODBC functions such as SQLBindParameter, SQLBindCol... I think it must call SQLColAttribute for this. I did not try to use Firebird ODBC driver in Oracle as yet. Alexander -- Alexander Potapchenko Senior developer |
From: Nikolay S. <nik...@re...> - 2009-01-14 22:29:25
|
Alexander, Oracle is not quite easy when it comes to numeric data types. Native numeric in Oracle has 38 decimal digits, and as such can not always be represented as SQL_INTEGER. Can you take an Oracle instance, and see what is going on when using Firebird ODBC driver in the way described? This way we may let the users from bank's IT department use our Firebird data warehousing databases from their Oracle environment. Alexander Potapchenko wrote: > Hauser, Karsten wrote: > >> Here's the one without join: >> dg4odbcFORMICA f08-d50 EXIT SQLExecute with return code -1 (SQL_ERROR) >> HSTMT 01B51960 >> >> DIAG [01004] [ODBC Firebird Driver]Data truncated (0) >> >> DIAG [HY000] [ODBC Firebird Driver][Firebird]Dynamic SQL Error >> SQL error code = -303 >> conversion error from string " " (-303) >> ---------------------------- >> >> > I have considered this problem. > SQLBindParameter is called with wrong parameters, if NR is numeric then > fourth parameter must be SQL_INTEGER but not SQL_C_CHAR. (Oracle bug?) > In this case if ? (the parameter) is not equal number (" " in your case) > then Firebird engine can not execute this query without specific > conversion to char type (TRIM converts to char type). > I can recommend to use the following: > SELECT "NR" FROM "PERSONAL" WHERE ?= cast("NR" as varchar(10)). > > Regards > Alexander > -- Nikolay Samofatov, MBA Red Soft International +1 416 710 6854 |
From: Alexander P. <ale...@re...> - 2009-01-14 21:23:26
|
Hauser, Karsten wrote: > Here's the one without join: > > dg4odbcFORMICA f08-d50 ENTER SQLPrepare > HSTMT 01B51960 > UCHAR * 0x01E9C698 [ 40] "SELECT "NR" FROM "PERSONAL" WHERE ?="NR"" > SDWORD 40 > > dg4odbcFORMICA f08-d50 EXIT SQLPrepare with return code 0 (SQL_SUCCESS) > HSTMT 01B51960 > UCHAR * 0x01E9C698 [ 40] "SELECT "NR" FROM "PERSONAL" WHERE ?="NR"" > SDWORD 40 > > dg4odbcFORMICA f08-d50 ENTER SQLBindParameter > HSTMT 01B51960 > UWORD 1 > SWORD 1 <SQL_PARAM_INPUT> > SWORD 1 <SQL_C_CHAR> > SWORD 3 <SQL_DECIMAL> > SQLULEN 1 > SWORD 0 > PTR 0x01EAE5F4 > SQLLEN 65 > SQLLEN * 0x01E1D5E4 > dg4odbcFORMICA f08-d50 ENTER SQLExecute > HSTMT 01B51960 > > dg4odbcFORMICA f08-d50 EXIT SQLExecute with return code -1 (SQL_ERROR) > HSTMT 01B51960 > > DIAG [01004] [ODBC Firebird Driver]Data truncated (0) > > DIAG [HY000] [ODBC Firebird Driver][Firebird]Dynamic SQL Error > SQL error code = -303 > conversion error from string " " (-303) > ---------------------------- > I have considered this problem. SQLBindParameter is called with wrong parameters, if NR is numeric then fourth parameter must be SQL_INTEGER but not SQL_C_CHAR. (Oracle bug?) In this case if ? (the parameter) is not equal number (" " in your case) then Firebird engine can not execute this query without specific conversion to char type (TRIM converts to char type). I can recommend to use the following: SELECT "NR" FROM "PERSONAL" WHERE ?= cast("NR" as varchar(10)). Regards Alexander -- Alexander Potapchenko Senior developer |