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: <car...@te...> - 2002-10-18 07:34:13
|
Hello: > I'm looking for an ODBC driver for Firebird 1.0 or IB 6.02. > What's the best free and where can i download it for a test ? There are two ODBC drivers for free ( that i know ), the IBPhoenix ODBC Driver and the XTG ODBC Driver, you can download the latest snapshot of the ODBC Driver of IBPhoenix at : http://www.ibphoenix.com/downloads/OdbcJdbc-20020802-snapshot.zip Best regards Carlos Guzmán Álvarez Vigo-Spain |
From: Gianluca A. <acc...@ho...> - 2002-10-18 07:23:32
|
I'm looking for an ODBC driver for Firebird 1.0 or IB 6.02. What's the best free and where can i download it for a test ? Thank you in advance |
From: Thomas M. <tm...@bs...> - 2002-10-17 19:14:24
|
We also noticed some wierd things with TIMESTAMP too, but have been unable to track it down. I don't know the inner workings, but taking a stab at it, it looks like it isn't converting the number properly from the 64bit Integer that it gets restored to internally back to a decimal for the client. The decimal place is off by 6. The scale is 6. Maybe it means something, maybe it doesn't. Paul Reeves wrote: > Thomas Miller wrote: > >> 1) When will the next snap shot be available? >> >> 2) We use NUMERIC(18,6) for all of our currency values. We use >> Crystal. >> >> Problem. >> >> Actual Display >> 100.01 100.01 >> 57.34 57,340,000 >> When ever the first decimal place does not hold a "0" zero, it >> doesn't divide the value by the decimal places. >> > > I've been looking at this issue (tangentially) and it looks to me that > something is screwy somewhere, but I just can't nail it down. At the > time (yesterday) I was trying to get the driver to work with Access > and it looks as if NUMERIC and DECIMAL are converted to CHAR before > being returned to the client app. In my Access test this seemed to > cause problems because the CHAR size wasn't big enough to take large > numbers. > > It also seems that TIMESTAMPS aren't always treated nicely, but that > is another issue altogether. > > Next snapshot? Good question. I'd like to make some headway with the > above issues first, but if I can't then I guess I'll wrap up what we have. > > > Paul -- Thomas Miller Delphi Client/Server Certified Developer BSS Accounting & Distribution Software BSS Enterprise Accounting FrameWork http://www.bss-software.com |
From: Paul R. <pr...@ib...> - 2002-10-17 18:07:58
|
Thomas Miller wrote: > 1) When will the next snap shot be available? > > 2) We use NUMERIC(18,6) for all of our currency values. We use Crystal. > > Problem. > > Actual Display > 100.01 100.01 > 57.34 57,340,000 > When ever the first decimal place does not hold a "0" zero, it > doesn't divide the value by the decimal places. > I've been looking at this issue (tangentially) and it looks to me that something is screwy somewhere, but I just can't nail it down. At the time (yesterday) I was trying to get the driver to work with Access and it looks as if NUMERIC and DECIMAL are converted to CHAR before being returned to the client app. In my Access test this seemed to cause problems because the CHAR size wasn't big enough to take large numbers. It also seems that TIMESTAMPS aren't always treated nicely, but that is another issue altogether. Next snapshot? Good question. I'd like to make some headway with the above issues first, but if I can't then I guess I'll wrap up what we have. Paul -- Paul Reeves http://www.ibphoenix.com Supporting users of Firebird and InterBase |
From: Thomas M. <tm...@bs...> - 2002-10-17 14:36:40
|
1) When will the next snap shot be available? 2) We use NUMERIC(18,6) for all of our currency values. We use Crystal. Problem. Actual Display 100.01 100.01 57.34 57,340,000 When ever the first decimal place does not hold a "0" zero, it doesn't divide the value by the decimal places. -- Thomas Miller Delphi Client/Server Certified Developer BSS Accounting & Distribution Software BSS Enterprise Accounting FrameWork http://www.bss-software.com |
From:
<car...@te...> - 2002-09-22 10:11:09
|
Hello: Litte changes. InfoItems.h Add: NITEM (SQL_SQL92_DATETIME_FUNCTIONS, 0) NITEM (SQL_SQL92_FOREIGN_KEY_DELETE_RULE, 0) NITEM (SQL_SQL92_FOREIGN_KEY_UPDATE_RULE, 0) NITEM (SQL_SQL92_NUMERIC_VALUE_FUNCTIONS, 0) NITEM (SQL_SQL92_RELATIONAL_JOIN_OPERATORS, 0) NITEM (SQL_SQL92_ROW_VALUE_CONSTRUCTOR, 0) NITEM (SQL_SQL92_STRING_FUNCTIONS, 0) NITEM (SQL_SQL92_VALUE_EXPRESSIONS, 0) OdbcConnection::sqlGetInfo Add: case SQL_SQL92_DATETIME_FUNCTIONS: value |= SQL_SDF_CURRENT_DATE | SQL_SDF_CURRENT_TIME | SQL_SDF_CURRENT_TIMESTAMP; break; case SQL_SQL92_FOREIGN_KEY_DELETE_RULE: value |= SQL_SFKD_CASCADE | SQL_SFKD_NO_ACTION | SQL_SFKD_SET_DEFAULT | SQL_SFKD_SET_NULL; break; case SQL_SQL92_FOREIGN_KEY_UPDATE_RULE: value |= SQL_SFKU_CASCADE | SQL_SFKU_NO_ACTION | SQL_SFKU_SET_DEFAULT | SQL_SFKU_SET_NULL; break; case SQL_SQL92_RELATIONAL_JOIN_OPERATORS: { value = 0; if ( metaData->supportsANSI92EntryLevelSQL() ) value |= SQL_SRJO_LEFT_OUTER_JOIN | // (FIPS Transitional level) SQL_SRJO_NATURAL_JOIN | // (FIPS Transitional level) SQL_SRJO_INNER_JOIN | // (FIPS Transitional level) SQL_SRJO_RIGHT_OUTER_JOIN; // (FIPS Transitional level) if ( metaData->supportsANSI92IntermediateSQL() ) value |= SQL_SRJO_CORRESPONDING_CLAUSE | SQL_SRJO_EXCEPT_JOIN | SQL_SRJO_FULL_OUTER_JOIN | SQL_SRJO_INTERSECT_JOIN; if ( metaData->supportsANSI92FullSQL() ) value |= SQL_SRJO_CROSS_JOIN | SQL_SRJO_UNION_JOIN; } break; case SQL_SQL92_VALUE_EXPRESSIONS: { value = 0; if ( metaData->supportsANSI92EntryLevelSQL() ) value |= SQL_SVE_CAST; // (FIPS Transitional level) if ( metaData->supportsANSI92IntermediateSQL() ) value |= SQL_SVE_CASE | SQL_SVE_COALESCE | SQL_SVE_NULLIF; // if ( metaData->supportsANSI92FullSQL() ) } break; Best Regards Carlos Guzmán Álvarez |
From:
<car...@te...> - 2002-09-22 09:13:27
|
Hello: Litte changes. InfoItems.h Add: NITEM (SQL_SQL92_PREDICATES, 0) NITEM (SQL_SQL92_REVOKE, 0) NITEM (SQL_SQL92_GRANT, 0) OdbcConnection::sqlGetInfo Change for SQL_SEARCH_PATTERN_ESCAPE case SQL_SEARCH_PATTERN_ESCAPE: if ( metaData->supportsLikeEscapeClause() ) string = metaData->getSearchStringEscape(); Add: case SQL_SQL92_PREDICATES: { value = 0; if ( metaData->supportsANSI92EntryLevelSQL() ) { value |= SQL_SP_BETWEEN | SQL_SP_EXISTS | SQL_SP_IN | SQL_SP_ISNOTNULL| SQL_SP_ISNULL | SQL_SP_LIKE; // SQL_SP_QUANTIFIED_COMPARISON // SQL_SP_UNIQUE } if ( metaData->supportsANSI92IntermediateSQL() ) value |= SQL_SP_OVERLAPS; if ( metaData->supportsANSI92FullSQL() ) value |= SQL_SP_MATCH_FULL | SQL_SP_MATCH_PARTIAL | SQL_SP_MATCH_UNIQUE_FULL | SQL_SP_MATCH_UNIQUE_PARTIAL | SQL_SP_ISNULL | SQL_SP_LIKE; } break; case SQL_SQL92_GRANT: { value = 0; if ( metaData->supportsANSI92EntryLevelSQL() ) { value |= SQL_SG_DELETE_TABLE | SQL_SG_INSERT_TABLE | SQL_SG_REFERENCES_COLUMN | SQL_SG_REFERENCES_TABLE | SQL_SG_SELECT_TABLE | SQL_SG_UPDATE_COLUMN | SQL_SG_UPDATE_TABLE | SQL_SG_WITH_GRANT_OPTION ; } if ( metaData->supportsANSI92IntermediateSQL() ) value |= SQL_SG_USAGE_ON_DOMAIN | SQL_SG_USAGE_ON_CHARACTER_SET | SQL_SG_USAGE_ON_COLLATION | SQL_SG_USAGE_ON_TRANSLATION; // if ( metaData->supportsANSI92FullSQL() ) } break; case SQL_SQL92_REVOKE: { value = 0; if ( metaData->supportsANSI92EntryLevelSQL() ) value |= SQL_SR_DELETE_TABLE | SQL_SR_INSERT_TABLE | SQL_SR_REFERENCES_COLUMN | SQL_SR_REFERENCES_TABLE | SQL_SR_SELECT_TABLE | SQL_SR_UPDATE_COLUMN | SQL_SR_UPDATE_TABLE; if ( metaData->supportsANSI92IntermediateSQL() ) value |= SQL_SR_CASCADE | SQL_SR_GRANT_OPTION_FOR | SQL_SR_INSERT_COLUMN | SQL_SR_RESTRICT | SQL_SR_USAGE_ON_DOMAIN | SQL_SR_USAGE_ON_CHARACTER_SET | SQL_SR_USAGE_ON_COLLATION | SQL_SR_USAGE_ON_TRANSLATION; // if ( metaData->supportsANSI92FullSQL() ) } break; Best Regards Carlos Guzmán Álvarez |
From: Berend de B. <be...@po...> - 2002-09-15 23:58:42
|
Hello All, I tried to call SQLFetch such that it returns multiple rows per call. However, the Windows ODBC driver returns just one 1 row at a time. It looks like this driver is an ODBC 2.0 driver that does not support SQLExtendedFetch. But the doc says it attempts to be a 3.5 driver. Is this not yet supported/implemented? How can I query what the driver actually supports? Regards, Berend. (-: |
From:
<car...@te...> - 2002-08-26 18:28:25
|
Hello: More changes for SQLGetInfo: IscDatabaseMetadata.cpp Change getExtraNameCharacters to: const char* IscDatabaseMetaData::getExtraNameCharacters() { return "$"; } InfoItems.h Change UITEM (SQL_SPECIAL_CHARACTERS, 0) for CITEM (SQL_SPECIAL_CHARACTERS, "") OdbcConnection.cpp OdbcConnection::sqlGetInfo Add: case SQL_SPECIAL_CHARACTERS: string = metaData->getExtraNameCharacters(); break; Best Regards Carlos Guzmán Álvarez |
From: DIXON <di...@bo...> - 2002-08-24 15:39:10
|
From: <car...@te...> - 2002-08-23 17:14:23
|
Hello: >> Just complete in the destructor: I think this is more correct if you put it in the close method, what do you think?? : void IscResultSet::close() { reset(); if (statement) { statement->deleteResultSet (this); statement->release(); statement = NULL; } } Best Regards Carlos Guzmán Álvarez |
From: <la...@t-...> - 2002-08-23 12:35:55
|
Hello! I noticed that the odbc driver has a serious memory leak, which happens everytime a resultset is used. (When my program was accessing a interbase database using the odbc driver, the memory went up like hell). The conversions array in the file IscResultSet is never deleted. Just complete in the destructor: IscResultSet::~IscResultSet() { close(); if (metaData) delete metaData; // T. Lagally: Dont forget to free this! if (conversions) { reset(); delete[] conversions; } } I didnt change anything in the cvs, because I am totally new to this list and odbc driver. Maybe anybody from you can do this. Thanks! I also have a question: I noticed that the odbc-driver is not threadsafe. It looks like that even the underlying library from interbase is not threadsafe? Do anybody has any information concerning that? Greetings Thomas Lagally |
From: Bennie R. <BR...@mo...> - 2002-08-21 11:46:43
|
Please HELP! Bennie Roux 012 673 7051= |
From: Carlos G.A. <car...@ho...> - 2002-08-16 13:41:03
|
Hello: Little fix for SQLColumnsResultSet.cpp IscColumnsResultSet::adjustResults // decimal digits have no meaning for some columns // radix - doesn't mean much for some colums either switch (sqlType.type) { .... case JDBC_NUMERIC: case JDBC_DECIMAL: resultSet->setValue (9, resultSet->getInt(9)*-1); // Scale > 0 break; .... Best Regards Carlos Guzmán Álvarez Vigo-España _________________________________________________________________ MSN. Más Útil cada Día. http://www.msn.es/intmap/ |
From: Carlos G.A. <car...@ho...> - 2002-08-14 17:10:03
|
Hello: >> What are the tools (or circumstances) where sqlGetStmtAttr is called >> >>with SQL_ROWSET_SIZE? With MS ODBC Test application yo can do it, and i´m not sure but as i remember OpenOffice make this call, i can view it if you want, SQL_ROWSET_SIZE is described in the SQLSetStmtOption/SQLGetStmtOption and calls to this have to be mapped to SQLSetStmtAttr/SQLGetStmtAttr in ODBC 3.x drivers Best Regards Carlos Guzmán Álvarez _________________________________________________________________ MSN. Más Útil cada Día. http://www.msn.es/intmap/ |
From: Carlos G.A. <car...@ho...> - 2002-08-14 17:07:44
|
Hello: >There is a conflict between MAX_SCHEMA_NAME_LEN and SQL_MAX_OWNER_NAME_LEN. Sorry, The correct case is: case SQL_MAX_USER_NAME_LEN: value = metaData->getMaxUserNameLength(); break; >I would be inclined to leave SQL_MAX_SCHEMA_NAME_LEN out of sqlGetInfoItems >and use the UITEM() macro in InfoItems.h I think that is a good idea to return 0, firebird don´t support it at this time but can support it in the future, with this defined yet would be more easily to change in the future, and returning zero all aplicattions that use it can work well ( i say this because with the MS ODBC Test application the driver crash when you request SQLGetIngfo for an UITEM ). This is the documentation for SQL_MAX_SCHEMA_NAME_LEN in the MS ODBC SDK: An SQLUSMALLINT value specifying the maximum length of a schema name in the data source. If there is no maximum length or the length is unknown, this value is set to zero. An FIPS Entry levelconformant driver will return at least 18. An FIPS Intermediate levelconformant driver will return at least 128. This InfoType has been renamed for ODBC 3.0 from the ODBC 2.0 InfoType SQL_MAX_OWNER_NAME_LEN. Best Regards Carlos Guzman Álvarez >From: Paul Reeves <pr...@ib...> >Reply-To: fir...@li... >To: fir...@li... >Subject: Re: [Firebird-odbc-devel] More little fixes >Date: Wed, 14 Aug 2002 16:42:52 +0200 > >Carlos G.A. wrote: >>Hello: >> >>More little fixes: >> >>Note: SQL >> >>1. InfoItems.h >> >>Change >> >> UITEM (SQL_MAX_USER_NAME_LEN, 0) >> UITEM (SQL_MAX_SCHEMA_NAME_LEN, 0) > > > for > >> SITEM (SQL_MAX_USER_NAME_LEN, 0) >> SITEM (SQL_MAX_SCHEMA_NAME_LEN, 0) >> >> >>2. OdbcConnection.cpp >> >>Add to SQLGetInfo this: >> case SQL_MAX_USER_NAME_LEN: >> case SQL_MAX_OWNER_NAME_LEN: >> value = metaData->getMaxUserNameLength(); >> break; >> >> case SQL_MAX_SCHEMA_NAME_LEN: >> value = metaData->getMaxSchemaNameLength(); >> break; >> > >There is a conflict between MAX_SCHEMA_NAME_LEN and SQL_MAX_OWNER_NAME_LEN. >They are defined with the same value. Only one of them can exist in the >same case statement. As schema are not actually supported by Firebird I >would be inclined to leave SQL_MAX_SCHEMA_NAME_LEN out of sqlGetInfoItems >and use the UITEM() macro in InfoItems.h > > >Thoughts? > > >Paul >-- > >Paul Reeves >http://www.ibphoenix.com >Supporting users of Firebird and InterBase > > > > >------------------------------------------------------- >This sf.net email is sponsored by: Dice - The leading online job board >for high-tech professionals. Search and apply for tech jobs today! >http://seeker.dice.com/seeker.epl?rel_code=31 >_______________________________________________ >Firebird-odbc-devel mailing list >Fir...@li... >https://lists.sourceforge.net/lists/listinfo/firebird-odbc-devel Un saludo Carlos Guzmán Álvarez Vigo-España "No tengo dones especiales.Sólo soy apasionadamente curioso" Albert Einstein, científico. _________________________________________________________________ MSN Fotos: la forma más fácil de compartir e imprimir fotos. http://photos.msn.es/support/worldwide.aspx |
From: Paul R. <pr...@ib...> - 2002-08-14 14:46:45
|
Carlos G.A. wrote: > Hello: > > More little fixes: > > Note: SQL > > 1. InfoItems.h > > Change > > UITEM (SQL_MAX_USER_NAME_LEN, 0) > UITEM (SQL_MAX_SCHEMA_NAME_LEN, 0) > for > SITEM (SQL_MAX_USER_NAME_LEN, 0) > SITEM (SQL_MAX_SCHEMA_NAME_LEN, 0) > > > 2. OdbcConnection.cpp > > Add to SQLGetInfo this: > case SQL_MAX_USER_NAME_LEN: > case SQL_MAX_OWNER_NAME_LEN: > value = metaData->getMaxUserNameLength(); > break; > > case SQL_MAX_SCHEMA_NAME_LEN: > value = metaData->getMaxSchemaNameLength(); > break; > There is a conflict between MAX_SCHEMA_NAME_LEN and SQL_MAX_OWNER_NAME_LEN. They are defined with the same value. Only one of them can exist in the same case statement. As schema are not actually supported by Firebird I would be inclined to leave SQL_MAX_SCHEMA_NAME_LEN out of sqlGetInfoItems and use the UITEM() macro in InfoItems.h Thoughts? Paul -- Paul Reeves http://www.ibphoenix.com Supporting users of Firebird and InterBase |
From: Paul R. <pr...@ib...> - 2002-08-14 12:23:45
|
Carlos G.A. wrote: > 2. OdbcStatement::sqlGetStmtAttr > > Add SQL_ROWSET_SIZE under SQL_ATTR_ROW_ARRAY_SIZE > > case SQL_ATTR_ROW_ARRAY_SIZE: > case SQL_ROWSET_SIZE: > value = rowArraySize; > break; > I don't understand this. All the tests in this method are for constants named SQL_ATTR_NNNNNNN. SQL_ROWSET_SIZE doesn't have the right name. This makes me suspicious. What are the tools (or circumstances) where sqlGetStmtAttr is called with SQL_ROWSET_SIZE? Paul -- Paul Reeves http://www.ibphoenix.com Supporting users of Firebird and InterBase |
From: Zafar T M. <zaf...@ar...> - 2002-08-13 04:48:43
|
I would recommend it, however I would keep one thing in mind. I have not as of yet seen an odbc or ole-db driver for interbase that allows the user to view metada of interbase. For example, the ole-db or odbc drivers of other major databases allow you to view and edit metadata, like the contents of a stored procedure or modification of the data types of table fields automatically. Now if you can handle that then I would highly recommend interbase. It is a fast dbms with speeds comparable to that of oracle. Also the GUI of the native environment provided by Borland, though not the best is much better than the native environment of oracle also. I was able quickly use ddl and save the code of the ddl not as separate files but as procedures with in the database. In other databases returning data from a resultset in a stored procedure is not an easy task. Certainly not in oracle. In interbase it is relatively easy. You can also use C (and C++?) to make user defined functions. This might be a major downfall for interbase. However I am good at C so I don't have a problem with this. In the end I would recommend you trying it to see for yourself. Best Regards, Zafar Tasleem Minhas, CASD/DAD, T-9N, C-56, 873-1810, min...@ar... |
From: kag <ka...@op...> - 2002-08-12 14:13:55
|
Dear Sirs, I have a warehouse application based on Borland DBE and want to develop it on an open DBMS. Inerbase 6.0 was recommended to me. A team of three will work. We are not very experienced in data base. Is SQL enough, and what is the easiest bridge? What would you say? Are you going to encourage me? Thanks in advance Krassimir Gurov OPTIM - AL Ltd. Haidushka Gora Str. BL.18A, 27 Sofia 1404 Bulgaria fax: (+359) 2 581 759 tel.: (+359) 2 592 098, 592 720 e- mail: ka...@op... |
From: Carlos G.A. <car...@ho...> - 2002-08-12 13:57:12
|
Hello: >>IscStatement::getResultSet() >>... >> if ( !selectActive ) >> if (outputSqlda.sqlda->sqld < 1) >> throw SQLEXCEPTION (RUNTIME_ERROR, this works if you make if ( selectActive ) if (outputSqlda.sqlda->sqld < 1) throw SQLEXCEPTION (RUNTIME_ERROR, Best regards Carlos Guzmán Álvarez >From: Paul Reeves <pr...@ib...> >Reply-To: fir...@li... >To: fir...@li... >Subject: Re: [Firebird-odbc-devel] PRoblem with the driver >Date: Mon, 12 Aug 2002 14:43:52 +0200 > >Carlos G.A. wrote: > > >>Im making test to the driver with the microsoft odbc test program, this >>program have an option for creating a table, a index in the table, make a >>select and insert data in the table created, using the information >>returned by SQLGetTypeInfo, well, the 3 first steps works well but the >>insert of data fails, i made a fix for this: >> > >What is wrong with testing for selectActive? IscStatement::execute() will >set it true if the statement returns a result set. > >We should probably change the case statement consider >isc_info_sql_stmt_exec_procedure. > >I propose this as an alternative: > >IscStatement::getResultSet() > >... > if ( !selectActive ) > if (outputSqlda.sqlda->sqld < 1) > throw SQLEXCEPTION (RUNTIME_ERROR, > "current statement doesn't return results"); > >... > > >>Move this in OdbcStatement::sqlPrepare: >> >> if( updatePreparedResultSet ) >> setResultSet ( statement->getResultSet() ); >> >>into try...catch block: > >Done. > > > >Paul >-- > >Paul Reeves >http://www.ibphoenix.com >Supporting users of Firebird and InterBase > > > > >------------------------------------------------------- >This sf.net email is sponsored by:ThinkGeek >Welcome to geek heaven. >http://thinkgeek.com/sf >_______________________________________________ >Firebird-odbc-devel mailing list >Fir...@li... >https://lists.sourceforge.net/lists/listinfo/firebird-odbc-devel Un saludo Carlos Guzmán Álvarez Vigo-España "No tengo dones especiales.Sólo soy apasionadamente curioso" Albert Einstein, científico. _________________________________________________________________ Charle con sus amigos online usando MSN Messenger: http://messenger.msn.com |
From: Paul R. <pr...@ib...> - 2002-08-12 12:46:46
|
Carlos G.A. wrote: > Im making test to the driver with the microsoft odbc test program, this > program have an option for creating a table, a index in the table, make > a select and insert data in the table created, using the information > returned by SQLGetTypeInfo, well, the 3 first steps works well but the > insert of data fails, i made a fix for this: > What is wrong with testing for selectActive? IscStatement::execute() will set it true if the statement returns a result set. We should probably change the case statement consider isc_info_sql_stmt_exec_procedure. I propose this as an alternative: IscStatement::getResultSet() ... if ( !selectActive ) if (outputSqlda.sqlda->sqld < 1) throw SQLEXCEPTION (RUNTIME_ERROR, "current statement doesn't return results"); ... > Move this in OdbcStatement::sqlPrepare: > > if( updatePreparedResultSet ) > setResultSet ( statement->getResultSet() ); > > into try...catch block: Done. Paul -- Paul Reeves http://www.ibphoenix.com Supporting users of Firebird and InterBase |
From: Carlos G.A. <car...@ho...> - 2002-08-11 14:06:38
|
Hello: More stuff for SQLGetInfo. IscDatabaseMetadata Change IscDatabaseMetaData::getSQLKeywords() to: const char* IscDatabaseMetaData::getSQLKeywords() { // return "WEEKDAY,YEARDAY,SQL,TRIGGER"; return "ACTION,ACTIVE,ADD,ADMIN,AFTER,ALL,ALTER,AND,ANY,AS,ASC,ASCENDING,AT," "AUTO,AUTODDL,AVG,BASED,BASENAME,BASE_NAME,BEFORE,BEGIN,BETWEEN,BLOB," "BLOBEDIT,BUFFER,BY,CACHE,CASCADE,CAST,CHAR,CHARACTER,CHARACTER_LENGTH," "CHAR_LENGTH,CHECK,CHECK_POINT_LEN,CHECK_POINT_LENGTH,COLLATE,COLLATION," "COLUMN,COMMIT,COMMITTED,COMPILETIME,COMPUTED,CLOSE,CONDITIONAL,CONNECT," "CONSTRAINT,CONTAINING,CONTINUE,COUNT,CREATE,CSTRING,CURRENT,CURRENT_DATE," "CURRENT_TIME,CURRENT_TIMESTAMP,CURSOR,DATABASE,DATE,DAY,DB_KEY,DEBUG,DEC," "DECIMAL,DECLARE,DEFAULT,DELETE,DESC,DESCENDING,DESCRIBE,DESCRIPTOR," "DISCONNECT,DISPLAY,DISTINCT,DO,DOMAIN,DOUBLE,DROP,ECHO,EDIT,ELSE,END," "ENTRY_POINT,ESCAPE,EVENT,EXCEPTION,EXECUTE,EXISTS,EXIT,EXTERN,EXTERNAL," "EXTRACT,FETCH,FILE,FILTER,FLOAT,FOR,FOREIGN,FOUND,FREE_IT,FROM,FULL,FUNCTION," "GDSCODE,GENERATOR,GEN_ID,GLOBAL,GOTO,GRANT,GROUP,GROUP_COMMIT_WAIT," "GROUP_COMMIT_,WAIT_TIME,HAVING,HELP,HOUR,IF,IMMEDIATE,IN,INACTIVE,INDEX," "INDICATOR,INIT,INNER,INPUT,INPUT_TYPE,INSERT,INT,INTEGER,INTO,IS,ISOLATION," "ISQL,JOIN,KEY,LC_MESSAGES,LC_TYPE,LEFT,LENGTH,LEV,LEVEL,LIKE,LOGFILE," "LOG_BUFFER_SIZE,LOG_BUF_SIZE,LONG,MANUAL,MAX,MAXIMUM,MAXIMUM_SEGMENT," "MAX_SEGMENT,MERGE,MESSAGE,MIN,MINIMUM,MINUTE,MODULE_NAME,MONTH,NAMES," "NATIONAL,NATURAL,NCHAR,NO,NOAUTO,NOT,NULL,NUMERIC,NUM_LOG_BUFS," "NUM_LOG_BUFFERS,OCTET_LENGTH,OF,ON,ONLY,OPEN,OPTION,OR,ORDER,OUTER,OUTPUT," "OUTPUT_TYPE,OVERFLOW,PAGE,PAGELENGTH,PAGES,PAGE_SIZE,PARAMETER,PASSWORD," "PLAN,POSITION,POST_EVENT,PRECISION,PREPARE,PROCEDURE,PROTECTED,PRIMARY," "PRIVILEGES,PUBLIC,QUIT,RAW_PARTITIONS,RDB$DB_KEY,READ,REAL,RECORD_VERSION," "REFERENCES,RELEASE,RESERV,RESERVING,RESTRICT,RETAIN,RETURN,RETURNING_VALUES," "RETURNS,REVOKE,RIGHT,ROLE,ROLLBACK,RUNTIME,SCHEMA,SECOND,SEGMENT,SELECT,SET," "SHADOW,SHARED,SHELL,SHOW,SINGULAR,SIZE,SMALLINT,SNAPSHOT,SOME,SORT,SQLCODE," "SQLERROR,SQLWARNING,STABILITY,STARTING,STARTS,STATEMENT,STATIC,STATISTICS," "SUB_TYPE,SUM,SUSPEND,TABLE,TERMINATOR,THEN,TIME,TIMESTAMP,TO,TRANSACTION," "TRANSLATE,TRANSLATION,TRIGGER,TRIM,TYPE,UNCOMMITTED,UNION,UNIQUE,UPDATE," "UPPER,USER,USING,VALUE,VALUES,VARCHAR,VARIABLE,VARYING,VERSION,VIEW,WAIT," "WEEKDAY,WHEN,WHENEVER,WHERE,WHILE,WITH,WORK,WRITE,YEAR,YEARDAY"; } InfoItems.h Add: NITEM (SQL_DATETIME_LITERALS, 0) NITEM (SQL_CONVERT_WCHAR, 0) NITEM (SQL_CONVERT_WLONGVARCHAR, 0) NITEM (SQL_CONVERT_WVARCHAR,0) Change NITEM (SQL_CREATE_TRANSLATION, 0) NITEM (SQL_SQL_CONFORMANCE, 0) CITEM (SQL_KEYWORDS, "") CITEM (SQL_LIKE_ESCAPE_CLAUSE, "") NITEM (SQL_MAX_CHAR_LITERAL_LEN, 0) NITEM (SQL_MAX_INDEX_SIZE, 0) NITEM (SQL_MAX_STATEMENT_LEN, 0) OdbcConnection.h sqlGetInfo Add: case SQL_MAX_PROCEDURE_NAME_LEN: value = metaData->getMaxProcedureNameLength(); break; case SQL_SQL_CONFORMANCE: { if ( metaData->supportsANSI92EntryLevelSQL() ) value = SQL_SC_SQL92_ENTRY; // Entry level SQL-92 compliant. if ( metaData->supportsANSI92IntermediateSQL() ) value = SQL_SC_SQL92_INTERMEDIATE; // Intermediate level SQL-92 compliant. if ( metaData->supportsANSI92FullSQL() ) value = SQL_SC_SQL92_FULL; // Full level SQL-92 compliant. } break; case SQL_DATETIME_LITERALS: { value |= SQL_DL_SQL92_DATE; value |= SQL_DL_SQL92_TIME; value |= SQL_DL_SQL92_TIMESTAMP; } break; case SQL_CREATE_DOMAIN: { if ( metaData->supportsANSI92EntryLevelSQL() ) value |= 0; if ( metaData->supportsANSI92IntermediateSQL() ) { value |= SQL_CDO_CREATE_DOMAIN; value |= SQL_CDO_DEFAULT; value |= SQL_CDO_CONSTRAINT; value |= SQL_CDO_COLLATION; } if ( metaData->supportsANSI92FullSQL() ) value |= 0; } break; case SQL_CREATE_TABLE: { if ( metaData->supportsANSI92EntryLevelSQL() ) { value |= SQL_CT_CREATE_TABLE; value |= SQL_CT_COLUMN_CONSTRAINT; value |= SQL_CT_COLUMN_DEFAULT; } if ( metaData->supportsANSI92IntermediateSQL() ) { value |= SQL_CT_TABLE_CONSTRAINT; value |= SQL_CT_CONSTRAINT_NAME_DEFINITION; } if ( metaData->supportsANSI92FullSQL() ) value |= SQL_CT_COLUMN_COLLATION ; } break; case SQL_LIKE_ESCAPE_CLAUSE: string = metaData->supportsLikeEscapeClause() ? "Y" : "N"; break; Best regards Carlos Guzmán Álvarez _________________________________________________________________ Únase al mayor servicio mundial de correo electrónico: http://www.hotmail.com/es |
From: Paul R. <pr...@ib...> - 2002-08-11 06:35:35
|
Carlos G.A. wrote: > > Hello: > > More little fixes for the driver, for made this fully working i need to > know what string, numeric, timedate > and system functions are supported by Firebird. > > There are very few built-in to the engine. String: SUBSTRING(), UPPER() Numeric: AVG(), COUNT(), MAX(), MIN(), SUM() Date: EXTRACT() System: CAST() Paul -- Paul Reeves http://www.ibphoenix.com Supporting users of Firebird and InterBase |
From: Carlos G.A. <car...@ho...> - 2002-08-11 00:56:27
|
Hello: More little fixes for the driver, for made this fully working i need to know what string, numeric, timedate and system functions are supported by Firebird. InfoItems.h CITEM (SQL_SEARCH_PATTERN_ESCAPE, "") CITEM (SQL_EXPRESSIONS_IN_ORDERBY,"") CITEM (SQL_ORDER_BY_COLUMNS_IN_SELECT, "") NITEM (SQL_NUMERIC_FUNCTIONS, 0) NITEM (SQL_CONVERT_FUNCTIONS, 0) NITEM (SQL_STRING_FUNCTIONS, 0) NITEM (SQL_TIMEDATE_FUNCTIONS, 0) NITEM (SQL_SYSTEM_FUNCTIONS, 0) OdbcConnection.cpp sqlGetInfo case SQL_SEARCH_PATTERN_ESCAPE: string = metaData->getSearchStringEscape(); break; case SQL_STRING_FUNCTIONS: value = 0; break; case SQL_NUMERIC_FUNCTIONS: value = 0; break; case SQL_TIMEDATE_FUNCTIONS: value = 0; break; case SQL_SYSTEM_FUNCTIONS: value = 0; break; case SQL_EXPRESSIONS_IN_ORDERBY: string = metaData->supportsExpressionsInOrderBy() ? "Y" : "N"; break; case SQL_ORDER_BY_COLUMNS_IN_SELECT: string = metaData->supportsOrderByUnrelated() ? "N" : "Y"; break; Best Regards Carlos Guzmán Álvarez _________________________________________________________________ MSN Fotos: la forma más fácil de compartir e imprimir fotos. http://photos.msn.es/support/worldwide.aspx |