📄 index.html
字号:
to allocate OCILIB handles before any call to OCI_Initialize() * Extended implicit datatype conversions - Added <a class="code" href="group__g__connect.html#g591e0e1e49c7ff06e50f5ab17edf3dbf" title="Set the numeric format for implicit string / numeric conversions.">OCI_SetDefaultFormatNumeric</a>() - Added <a class="code" href="group__g__connect.html#g57c1be56edaf86588dfb7a1245bf5908" title="Return the current numeric format for implicit string / numeric conversions.">OCI_GetDefaultFormatNumeric</a>() - Added <a class="code" href="group__g__connect.html#g7fbe35082dadb74584cab6a89183aa19" title="Set the date format for implicit string / date conversions.">OCI_SetDefaultFormatDate</a>() - Added <a class="code" href="group__g__connect.html#g88036a98ff02dfadb2ad50800c38684c" title="Return the current date format for implicit string / date conversions.">OCI_GetDefaultFormatDate</a>() - Modified OCI_SetFormatDate() and OCI_GetFormatDate() that now are macro for compatibility with older code - Added support for implicit conversion: * String columns can be retrieved as numeric data * <a class="code" href="group__g__fetch.html#g755a9b07c174feacd05c86e0e44b0ab0" title="Return the current string value of the column at the given index in the resultset...">OCI_GetString</a>() and <a class="code" href="group__g__fetch.html#g755a9b07c174feacd05c86e0e44b0ab0" title="Return the current string value of the column at the given index in the resultset...">OCI_GetString</a>() can return <span class="keywordtype">string</span> data whatever the real type of the column (except for Object, Collection and Cursor based columns) * Improved internal numeric datatypes handling - Modified : public OCILIB datatype OCI_CDT_INTEGER and OCI_CDT_DOUBLE has been replaced by one datatype : OCI_CDT_NUMERIC - Modified : Now, all fetched numeric columns are internally mapped to OCINumber OCI type and to public type OCI_CDT_NUMERIC - Modified : Much cleaner, compact an easier code for handling OCI_GetXXXX() calls for all numeric types * Extended Date, timestamp and interval support - Added <a class="code" href="group__g__timestamp.html#g364aa28b777ed77ac6c66b7dd95926e8" title="Extract the date and time parts from a date handle.">OCI_TimestampGetDateTime</a>() - Added checks for securing input integer pointer : * <a class="code" href="group__g__date.html#ga20b12b698b3c244f7482aa0ed348be5" title="Extract the time part from a date handle.">OCI_DateGetTime</a>(), <a class="code" href="group__g__date.html#gdc1fad15bca1a1780d22148a104bcdbd" title="Extract the date part from a date handle.">OCI_DateGetDate</a>(), <a class="code" href="group__g__date.html#g0c33ca23c117aab2c8197ae7fdb657c8" title="Extract the date and time parts from a date handle.">OCI_DateGetDateTime</a>() * <a class="code" href="group__g__timestamp.html#g4c56996d6dc31b7a4373daa0018c88e1" title="Extract the time portion from a timestamp handle.">OCI_TimestampGetTime</a>(), <a class="code" href="group__g__timestamp.html#ge8b95bad27ed1bce2e9753e30d3fa26b" title="Extract the date part from a timestamp handle.">OCI_TimestampGetDate</a>(), <a class="code" href="group__g__timestamp.html#g364aa28b777ed77ac6c66b7dd95926e8" title="Extract the date and time parts from a date handle.">OCI_TimestampGetDateTime</a>(), <a class="code" href="group__g__timestamp.html#g807ca5a3e663b234945f9a018e88badb" title="Return the time zone (hour, minute) portion of a timestamp handle.">OCI_TimestampGetTimeZoneOffset</a>() * <a class="code" href="group__g__timestamp.html#g165e94c916375ea604737a2348c4d83b" title="Return the day / time portion of an interval handle.">OCI_IntervalGetDaySecond</a>(), <a class="code" href="group__g__timestamp.html#gf0632925b430ad8ff145e29936b7b592" title="Return the year / month portion of an interval handle.">OCI_IntervalGetYearMonth</a>() * Extended OCILIB documentation that has been updated and some precisions has been added: - Added : page <module> - section <PL/SQL support> with new code examples - Added : page <module> - section <Collections (Varrays and Nested Tables> with new code examples - Extended : page <module> - section <Error handling> for thread contextual error handling - Extended : page <module> - section <Fetching data> for scrollable cursors and <span class="keywordtype">string</span> conversions - Extended : page <module> - section <Library objects and datatypes>) for supported datatypes - Updated : page <module> - section <Charset support> - Modified : page <module> - section <Build Options> content moved to page <module> - section <Installing OCILIB> - Updated : miscellaneous changes * Miscellaneous changes - Modified : up to 110 various functions prototypes have been modified to change the type of the return value or some parameters from <span class="keywordtype">int</span> -> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> - Modified : <a class="code" href="group__g__fetch.html#gf2a9e28b66a9538ba0ffb62bffb87c16" title="Retrieve the resultset handle from an executed statement.">OCI_GetResultset</a>() returns now the first resultset if it exists instead of creating a new one - Modified : <a class="code" href="group__g__bind.html#g5e2b8cf5ec98a2e0379853387ea97c5e" title="Set the bind variable at the given index to null.">OCI_SetNull</a>() and <a class="code" href="group__g__bind.html#gd15c43afb43ae7ea7d7a8b8936faa6c8" title="Set to null the bind variable at the given position in an input array.">OCI_SetNullAtPos</a>() : now indexes and positions start at 1 - Modified : OCI_BIND_MAX (maximum number of binds for a statement) is now 512 by default instead of 256 - Modified : <a class="code" href="group__g__bind.html#g60d87fbeb94afeaf410ec243eb8c0f98" title="Set the input array size for bulk operations.">OCI_BindArraySetSize</a>() : param nbelem type modified from '<span class="keywordtype">int</span>' to '<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>' - Modified : <a class="code" href="group__g__hash.html#gac21d1abb64dd64e797b1fe8e8638675" title="Return the entry slot of the hash table internal list at the given position.">OCI_HashGetEntry</a>() : now indexes and positions start at 1 - Modified : Rearranged internal structures to respect alignment and avoid padding - Modified : <a class="code" href="group__g__hash.html#gac21d1abb64dd64e797b1fe8e8638675" title="Return the entry slot of the hash table internal list at the given position.">OCI_HashGetEntry</a>() : now indexes and positions start at 1 - Modified : return value in case of failure for <a class="code" href="group__g__transac.html#ge54af0bfb81cd2d21bea6451db491e60" title="Return global transaction mode.">OCI_TransactionGetMode</a>() [OCI_ERROR->OCI_UNKNOWN] and <a class="code" href="group__g__transac.html#g558f067c07970370c84b8e8463276f89" title="Return global transaction Timeout.">OCI_TransactionGetTimeout</a>() [OCI_ERROR -> 0] - Modified : OCI_GetColumnXXX() calls are now renamed to OCI_ColumnGetXXX() and old prototypes are maintained as macros for backward compatibility - Added : <a class="code" href="group__g__stmt.html#g1f051eb0e55245280385a19f20efe59a" title="Return the connection handle associated with a statement handle.">OCI_StatementGetConnection</a>() - Added : OCI_ColumnGetSchema() - Added : <a class="code" href="group__g__fetch.html#g2fcdb71d8b82e97e87be7e256a8fb109" title="Return the OCILIB object subtype of a column.">OCI_ColumnGetSubType</a>() - Added : support for MSVC6++/unicodes builds * Inclusion of wchar.h is now done in extern C++ block for MSVC6++ and cpp applications * swprintf() is mapped to _snwprintf() because VC6 C-library is not ISO C compliant * Fixed some Connection pools problems - Fixed : Connection pools : every call to <a class="code" href="group__g__connpool.html#g774ce156deb3477c83237a633b6538f6" title="Get a connection from the pool.">OCI_ConnPoolGetConnection</a>() was allocating internal data instead of using existing ones. - Fixed : Memory leak : internal connection transaction handle was never freed - Fixed : <a class="code" href="group__g__connpool.html#g55ba9db7940b0be1514ab3010c6a9e81" title="Create a Connection pool.">OCI_ConnPoolCreate</a>() : parameter 'incr_con' was not used (value '1' used instead) * Fixed some PL/SQL table problems - Fixed : PL/SQL table pure IN binds was causing PL/SQL error when the table parameters was accessed by PL/SQL procedures - Fixed : Passing the value 1 for array size in PL/SQL tables binds caused an ORA-06550 * Fixed Oracle Long fetching - Segmentation fault was happening if a select contained a LONG column + other columns - Unnecessary reallocation of internal LONG buffers was done at every internal fetch call (by default every 20 rows) - When using OCI_LONG_IMPLICIT (LONG mapped to VARCHAR), strings returned by <a class="code" href="group__g__fetch.html#g755a9b07c174feacd05c86e0e44b0ab0" title="Return the current string value of the column at the given index in the resultset...">OCI_GetString</a>() might not have their final null character * Modified GNU configure scripts - Added : For GNU builds added configure option --with-custom-loader for platforms that are not using '-ldl' (if using option --with-oracle-linkage=runtime) - Fixed : Some configure options were broken - Modified : Added some checks and some outputs * Miscellaneous fixes - Fixed : Replaced any references of '<span class="keywordtype">long</span>' C type with '<span class="keywordtype">int</span>' C types in unix wchar internal conversion functions (on 64bits platforms, sizeof(<span class="keywordtype">long</span>) is 8 bytes so it lead to some buffer bad alignment) - Fixed : Second parameter 'ptm' of <a class="code" href="group__g__date.html#g52fb4405771971a2603e3eb871b3256e" title="Affect an OCI_Date handle value to ISO C time datatypes.">OCI_DateToCTime</a>() and <a class="code" href="group__g__timestamp.html#g5b38e5b80794e324b17adf60dc851b03" title="Affect an OCI_Timestamp handle value to ISO C time datatypes.">OCI_TimestampToCTime</a>() was not mandatory as it should have been - Fixed : Unicode buffer conversion : Internal OCI_StringLength() could not work properly on some architectures - Fixed : Binding 64bits integers was not working properly (wrong internal flags) - Fixed : <a class="code" href="group__g__usertypes.html#gbeb0db1bb555a25b3012838aae3b9d11" title="Return the short value of the given object attribute.">OCI_ObjectGetShort</a>() and <a class="code" href="group__g__usertypes.html#gd3b4fbb26ad147d477a9865fffa318f7" title="Return the unsigned short value of the given object attribute.">OCI_ObjectGetUnsignedShort</a>() were missing in ocilib.c - Fixed : the header "limits.h" was not included in ocilib.h and on some configurations the support of '<span class="keywordtype">long</span> <span class="keywordtype">long</span>' could not be detected - Fixed : CLOBs read/writes on OCILIB Unix/Unicode builds could not work properly (wrong buffer passed to OCI) - Fixed : <a class="code" href="group__g__connect.html#geed5fe2da7af18c69585fbec9f63c951" title="Associate to the given connection a pointer to user data.">OCI_SetUserData</a>() was not exported - Fixed : return value of the declaration of <a class="code" href="group__g__connect.html#g6f61147801fce4b69edb4981ba4ea1b7" title="Return the highest Oracle version is supported by the connection.">OCI_GetVersionConnection</a>() was wrong (<span class="keywordtype">boolean</span> instead of <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>) - Fixed : <a class="code" href="group__g__plsql.html#geff8f38ba15b9e757cec70d91e4ffe13" title="Enable the server output.">OCI_ServerEnableOutput</a>() and <a class="code" href="group__g__plsql.html#g0d3321a0abff0722baf6b2b7233f4cb5" title="Disable the server output.">OCI_ServerDisableOutput</a>() prototypes didn't have the OCI_API call convention (for MS builds) - Fixed : <a class="code" href="group__g__usertypes.html#g95ba08a32cf97b7bed6235cc48bd2300" title="Return the string value of the given object attribute.">OCI_ObjectGetString</a>() prototype was returning wrong type 'mtext *' instead of 'dtext *' * Updated main demo application - Added : Example for scrollable cursors and collections (varrays and nested tables) - Fixed : some bad cast could lead buffer bad filling in mixed charset build * Fixed Mixed charset builds (OCI_CHARSET_MIXED ONLY) - Fixed : <a class="code" href="group__g__usertypes.html#g95ba08a32cf97b7bed6235cc48bd2300" title="Return the string value of the given object attribute.">OCI_ObjectGetString</a>() and <a class="code" href="group__g__usertypes.html#g93eb03a281c7a798bc804eb4a3496799" title="Set an object attribute of type string.">OCI_ObjectSetString</a>() were misunderstanding <span class="keywordtype">string</span> buffers - Fixed : <a class="code" href="group__g__plsql.html#geff8f38ba15b9e757cec70d91e4ffe13" title="Enable the server output.">OCI_ServerEnableOutput</a>() was not allocating enough memory to hold output buffer lines - Info : OCILIB functions using the OCI functions OCIStringPtr() and OCIStringAssignText() have a limitation on mixed charset builds : * In mixed builds, OCILIB Strings (dtext *) used for handling user data are <span class="keywordtype">wchar_t</span> strings, but the underlying OCI API understands theses strings as not unicode but ansi or other encoding * So, there is now, when building OCILIB with OCI_CHARSET_MIXED, an internal c
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -