Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

OCILIB - C Driver for Oracle / News: Recent posts

OCILIB v3.12.1 is now available for download !

OCILIB v3.12.1 is now available for download :)

Changes are :

* Fixed Unicode support (OCI_CHARSET_WIDE and OCI_CHARSET_MIXED)
* Miscellaneous fixes
Posted by Vincent Rogier 2013-03-05

OCILIB v3.11.1 is now available for download !

OCILIB v3.11.1 is now available for download :)

Changes are :

* Fixed broken support for Oracle Database Change notifications

   - Fixed OCI_SubscriptionRegister() : Previous version 3.11.0 introduced a bug in subscription registration

* OCILIB Thanks file was missing in 3.11.0 packages. It is reintroduced within this release.
Posted by Vincent Rogier 2012-12-20

OCILIB v3.11.0 is now available for download !

OCILIB v3.11.0 is now available for download :)

Changes are :

* Extended Oracle Streams AQ (Advanced Queues) support :

   - Added support for asynchrounous notifications (Petr Vanek proposal) :       
      - Added OCI_DequeueSubscribe()
      - Added OCI_DequeueUnsubscribe()
      - Added demo file queue_async.c

* Fixed And Enhhanced support of BINARY FLOAT and BINARY DOUBLE types :     
  - Updated OCI_GetDouble(), OCI_GetDouble2(), OCI_GetFloat(), OCI_GetFloat2() : 
      - In previous releases, BINARY FLOAT and BINARY DOUBLE were fetched as NUMBER and locally converted to native double and float types using Oracle Client API
      - With this release, BINARY FLOAT and BINARY DOUBLE are directly fetched as native double and float types
  - BINARY FLOAT and BINARY DOUBLE were not supported in Oracle Objects and Oracle Collections (TYPES, VARRAYs and NESTED TABLES)
      - In previous releases, segfaults could happen when manipulating objects with BINARY FLOAT and BINARY DOUBLE members or collections of BINARY FLOAT and BINARY DOUBLE
      - With this release, BINARY FLOAT and BINARY DOUBLE are fully supported within OCI_Elem and OCI_Object
  - Updated OCI_BindDouble(), OCI_BindArrayOfDoubles(), OCI_BindFloat(), OCI_BindArrayOfFloats() 
      - If the Oracle client supports BINARY FLOAT and BINARY DOUBLE types (Oracle 10g and above), host double and float variables are binding as BINARY FLOAT and BINARY DOUBLE instead of NUMBER.
      - This prevent the Oracle client from performing internal conversions. 
  - Enhanced String conversions :
      - When OCILIB has to convert BINARY DOUBLE values to/from strings, it now supports the double type full range of values.
      - OCILIB uses now the C runtime to perform BINARY DOUBLE and BINARY FLOAT conversions to/from strings as the Oracle Client API cannot handle the full double datatype wihtin its string conversion API

* Miscellaneous changes :

  - OCI_GetString() : Conversion from numeric types has been rewritten, much cleaner code now
  - Internal numeric types handling (conversions between numeric types, to/from strings) has been rewritten
  - Miscellaneous code updates : OCILIB source code has been tested against various code analysis tools
  - Documentation updates
  - Added pkgconfig support for Unixes/Linux platforms (thanks to Petr Vanek)

* Miscellaneous fixes :

  - OCI_GetBatchErrorCount() always returned 0
  - OCI_FileGetDirectory() did not set error flag for OCI_GetLastError()
  - OCI_ElemGetRaw() was setting error flag to TRUE in all cases for OCI_GetLastError()
  - OCI_PoolGetStatementCacheSize() was setting error flag to FALSE in all cases for OCI_GetLastError()
  - OCI_LobRead() and OCI_LobRead2() : In OCI_CHARSET_WIDE and OCI_CHARSET_MIXED builds, values could be truncated with Oracle clients 8i and 9i only
  - OCI_LobWrite2() and OCI_LobAppend2() : returned byte count may not been accurate for CLOB when using OCI_CHARSET_WIDE or OCI_CHARSET_MIXED builds
  - OCI_ColumnGetCharUsed() : Attribute introduced in Oracle 9.2 but OCILIB tried to retrieve it from Oracle 9.0 as well
  - OCI_ConnectionFree() could generate a segfault on a reused connection retrieved from a connection pool since version 3.10.0
  - OCI_TypeInfoGet() could generate a segfault in OCI_CHARSET_WIDE builds when a table/view column or object member was an Oracle Type (Object and Collection)
  - OCI_xxxFmt() calls : Timestamp arguments were not formatted correctly (missing quotes in the formatted SQL)     
  - Scrollable Statements : 
      - An Oracle error (ORA-01001 or ORA-01002) was thrown when fetching a statement (PL/SQL Cursor or Nested table) that was returned by a select statement that contained more thant one column
      - This happened only if the statement was retrieved from a scrollable statement using array fetching (internal OCILIB default behavior)
      - This is an Oracle bug and a workaround has been found
      - Now, OCILIB internally sets the resultset internal array size to 1 and thus ignore any values set using OCI_SetFetchSize() for such statements... [read more](/p/orclib/news/2012/12/ocilib-v3110-is-now-available-for-download-/)
Posted by Vincent Rogier 2012-12-12

OCILIB v3.9.4 is now available for download !

OCILIB v3.9.4 is now available for download :)

Changes are :

* Miscellaneous fixes

  - Connection and Session Pools : Fixed few bugs related to OCILIB automatic adaptation to runtime client versions and features that could lead OCI_PoolGetConnection() to return NULL
  - Statement cache was not properly activated when feature was available
  - OCI_PoolGetStatementCacheSize() : an error was raised as an invalid internal oci attibute code was used
  - Fixed broken compilation support for Oracle 8i and 9i clients on unix platforms when oracle shared lib import mode is OCI_IMPORT_LINKAGE
  - Oracle 11g : OCILIB driver name could not be properly set in the view V$SESSION_CONNECT_INFO
  - Oracle XA :
      - Unix platforms : No change, XA is supported for all Oracle Clients >= 8i
      - MS Windows Platforms :
          * When using the Dlls provided in OCILIB releases, XA wis now enabled only if the Oracle client loaded at runtime has XA symbols embedded in oci.dll (usually >= Oracle 10g)
          * When compiling yourself OCILIB, support is enabled only with Oracle Client 10g and above as on MS Windows, for 8i and 9i, specific import libraries are used and can be missing in some installations             
          * So when XA is not enabled, using the flag OCI_SESSION_XA with OCI_ConnectionCreate() will now throw an exception

* Miscellaneous changes

  - default transaction behavior :

      - Prior to v3.9.4, a default transaction object was created in OCI_ConnectionCreate() and associated to the returned connection object. 
      - From v3.9.4
          * No changes for regular standalone transactions and transactions retrieved from connection pool.
          * For XA connections and connections retrieved from session pool, no transaction object is created anymore and thus, OCI_GetTransaction() will return NULL for newly created connections.
          * Note that transaction objects must not be set to connections retrieved from a session pool or to XA connections
          * For other types of connections (regular or retrieved from connection pool), transaction objects can be used as normal

  - Various internal minor code change
  - Note that all sources files have been updated to include year 2012 in the copyright section ... [read more](/p/orclib/news/2012/06/ocilib-v394-is-now-available-for-download-/)
Posted by Vincent Rogier 2012-06-28

OCILIB v3.9.3 is now available for download !

OCILIB v3.9.3 is now available for download :)

Changes are :

* Miscellaneous fixes

  - Fixed broken support for Oracle 8i client since v3.9.0
  - Fixed OCI_ObjectSetObject() : a bug had been introduced in v3.8.1 when computing internal object structure offsets and paddings 
  - Fixed OCI_LobRead(), OCI_LobRead2() : in OCI_CHARSET_WIDE charset builds only, a segfault could happen caused by an internal buffer overwrite    
  - Fixed OCI_SetStatementCacheSize(), OCI_GetStatementCacheSize() : an error ORA-24315 (with no incidence) could be thrown by some versions of Oracle clients
  - Fixed OCI_BindXXX() : All binding methods returned TRUE instead of FALSE when an exception OCI_ERR_MAX_BIND occured
  - Fixed OCI_GetString() : an error OCI-22061 was happening when the column was numeric and a user defined numeric format where provided with OCI_SetDefaultFormatNumeric()
  - Fixed OCI_GetServerRevisionVersion() : it was returned the same value as OCI_GetServerMajorVersion() since v3.4.0
  - Fixed internal method OCI_ParseSqlFmt() used in OCI_xxxFmt() calls : Quoted strings were not properly output since v3.9.0
  - Fixed internal allocation mode : ... [read more](/p/orclib/news/2011/12/ocilib-v393-is-now-available-for-download-/)
Posted by Vincent Rogier 2011-12-04

OCILIB v3.9.0 now available for download !

OCILIB v3.9.0 is now available for download !

This release has new cool features and bug fixes :

  • Added support for Oracle XA connectivity (X/Open Distributed Transaction Processing XA interface)
  • Added support for TAF (Transparent Application Failover) and HA (High availability)
  • Added support for statement cache
  • Added support for Connection attributes introduced in Oracle 10gR2
  • Miscellaneous new API calls and tuning
  • Miscellaneous changes
  • Miscellaneous fixes... read more
Posted by Vincent Rogier 2011-04-27

OCILIB version 3.8.0 packages update !

Version 3.8.0 packages uploaded on monday morning were built with wrong queue.c source file.

I rebuilt all packages and uploaded them again.

So if you’ve downloaded OCILIB version 3.8.0 before the 26th of october – 09:37 UTC, you must download it again !

Posted by Vincent Rogier 2010-10-26

OCILIB v3.8.0 now available for download !

OCILIB v3.8.0 is now available for download !

This release has new cool features and bug fixes :

* Added support for Oracle Streams AQ (Advanced Queues)
* Added support for SQL parsing only
  • Miscellaneous changes
  • Miscellaneous fixes

Get the release and enjoy it !

Vincent

Posted by Vincent Rogier 2010-10-25

OCILIB v3.5.1 available for download

OCILIB v3.5.1 is now available for download.

It's just a minor bug release (4 minor bug fixes)

Vincent

Posted by Vincent Rogier 2010-02-03

Summary: OCILIB v3.3.0 now available for download !

OCILIB v3.3.0 is now available for download !

Here is the list of the main changes :

* Added SQL command and verb retrieving
* Added support for batched errors for Array DML
* Extended Lob Support
* Extended Collection API 
* Modified and extended Bind API  
* Extended OCI_ImmediateXXX() API
* Extended OCI_XXXFmt() API 
* Miscellaneous changes
* Miscellaneous fixes... [read more](/p/orclib/news/2009/07/summary-ocilib-v330-now-available-for-download-/)
Posted by Vincent Rogier 2009-07-06

OCILIB SVN repository (v3.3.0) has been updated (2009-06-10)

The current development snapshot of v3.3.0 has been updated.

You can browse the repository on sourceforge : http://orclib.svn.sourceforge.net/viewvc/orclib/"

The temporary v3.3.0 changelog is available :
http://orclib.sourceforge.net/public/changelogs/ocilib-changelog-v3.3.0.txt

Main modifications of the current development version 3.3.0 :
Added SQL command and verb retrieving
Added support for batched errors for Array DML
Extended Lob Support
Extended Collection API
Modified and extended Bind API
Miscellaneous changes
* Miscellaneous fixes... read more

Posted by Vincent Rogier 2009-06-11

OCILIB v3.2.0 now available for download !

OCILIB v3.2.0 is now available for download ! Here is the list of the main changes :

* support for direct path loading
* extended binding capabilities (rebinding, update of array size, )
* extended objects API
* modified Database objects describe API
* static libraries builds for GCC ports on MS Windows added
* documentation updated
* Miscellaneous internal modifications
* Miscelleanous fixes (see changelog)
* Miscelleanous modifications (see changelog)... [read more](/p/orclib/news/2009/04/ocilib-v320-now-available-for-download-/)
Posted by Vincent Rogier 2009-04-20

OCILIB : Version 3.1.0

* Added support for Oracle REF datatype
* Added some tracing features
* Extended Object API
* Extended Collection elements API   
* Extended Bind informations
* Fixed Unicode support for Unixes platforms
* Miscellaneous public modifications
* Miscellaneous internal modifications       
* Miscellaneous fixes
Posted by Vincent Rogier 2009-01-26

OCILIB : Version 3.0.1

  • Fixed few memory leaks introduced in v3.0.0 (see changelog)
  • Fixed ocilib sources compilation with MSVC6++
Posted by Vincent Rogier 2008-10-17

OCILIB : Version 3.0.0

* Added support for scrollable cursors
* Added Support for Oracle Collections (VARRAYs and Nested Tables)
* Major library rewrite
* Extended Error handling
* New thread contextual error handling
* New functions
* Extended implicit datatypes conversions
* Extended documentation and demos
* Miscelleanous fixes (see changelog)
* Miscelleanous modifications (see changelog)
Posted by Vincent Rogier 2008-10-13

OCILIB : Version 2.5.1

This release is a patch for the version 2.5.0 :

  • Fixed runtime loading of some OCI symbols (broken since v2.5.0)
  • Fixed runtime loading of OCI shared library on Unix-like platforms(broken since v2.5.0)
  • Fixed connection pooling emulation for Oracle 8i
  • Fixed Unicode strings binding to PL/SQL tables of char/varchar
  • see changelog for details
Posted by Vincent Rogier 2008-07-24

OCILIB : Version 2.5.0

  • Added support for PL/SQL tables (PL/SQL arrays)
  • Extended Date, timestamp and interval support
  • Extended OCI_Connection handle attributes
  • Added Support for retreiving server output
  • Added Support for OCI Threadkeys
  • Extended runtime loading of Oracle shared libs on various Unix-like systems
  • Added Support for Oracle Instant Client on Unix-like systems
  • Extended OCILIB documentation :
  • Added more demo source code
  • Miscelleanous modifications (see changelog)
Posted by Vincent Rogier 2008-07-21

OCILIB : Version 2.4.0

* Added support for 16bits and 64bits integers
* Extended error handling
* Added prebuilt binaries for MS Windows 64bits
* Miscelleanous modifications (see changelog)
* Miscelleanous fixes (see changelog)
Posted by Vincent Rogier 2008-04-28

OCILIB : Version 2.3.0

  • Added support for connection pooling
  • Added support for portable threads and mutexes
  • Extended Lob support
  • Public interface modification (see changelog)
  • Misc. fixes (see changelog)
Posted by Vincent Rogier 2008-03-31

OCILIB : QOpenOCCI Qt Driver uses now OCILIB

OCILIB is now used has the underlying Oracle layer in the Qt Driver QOpenOCCI designed by Andrew White

Posted by Vincent Rogier 2008-03-19

OCILIB : Version 2.2.0

  • New features
  • Few modifications
  • Few fixes
  • see changelog
Posted by Vincent Rogier 2008-03-19

OCILIB : Version 2.1.0

  • Added public retrieval of internal OCI handles
  • Extended Hash Tables support
  • Added support for Lobs larger > 4 Go
  • Extended Oracle versions support
  • Modified Error handling
  • Misc. fixes (see changelog)
Posted by Vincent Rogier 2008-03-04

OCILIB : Version 2.0.0

* Added Object support
* Added Unicode support for Unixes
* Added National charform support
* Added SYSDBA/SYSOPER session support
* Extended Metadata information support
* Modified OCI_Long and OCI_Lob API
* Various modifications (see changelog)
* Various fixed bugs (see changelog)
Posted by Vincent Rogier 2008-02-16

OCILIB : Version 1.6.0

  • "Returning into" SQL Clause support
  • Added misc. fonctions
  • Modifications and bug fixes
  • See change for details
Posted by Vincent Rogier 2008-01-28

OCILIB : Version 1.5.4

  • Added : OCI_REVISION_VERSION constant
  • Fixed : Statement handle on a statement bind call() was allocated again and not always freed and could lead to an ORA-1000 error (since version 1.3.0)
  • Fixed : OCI_Date * Array binding : wrong memory allocation size
  • Fixed : Strings Array binding didn't adjust the buffer size depending on the sizeof(dtext) and could make OCI_execute failed on an Unicode build
  • Fixed : OCI_Long * Type (CLONG or BLONG) was wrongly set
  • Modified : Refactoring of internal datatypes allocation, binding and defining for better performances, more comptact and safer code
  • Modified : Object datatypes defining from query (User types and Refs) generates now an error
  • Modified : Extended demo application with array binding support, ref cursor, nested tables, timestamps and intervals
  • Removed : internal structure OCI_Data
Posted by Vincent Rogier 2008-01-10