aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-10-21Split 'in' binding into insert/update pair; rename 'out' to selectBoris Kolpackov3-95/+96
Also add the initial infrastructure for the readonly members support. Right now the split insert/update bindings allows us to avoid sending object id in UPDATE statements. It will also allows us to support readonly members.
2011-10-20Aesthetic changesConstantin Michael1-2/+2
2011-10-20Use SQLT_NUM instead of SQLT_VNU OCI type due to inconsistent buffer lengthsConstantin Michael4-88/+64
The size returned by OCI into the bound rlen parameter of a SQLT_VNU buffer does not include the additional length byte. This causes problems with images that are shared across multiple statements in ODB, such as the object_id image of containers.
2011-10-20Do not throw on a unique constraint violation during an insertConstantin Michael1-1/+13
2011-10-20Correct bind offset error arising due to OCI using 1 based indicesConstantin Michael1-1/+1
2011-10-20Correct usage of details::buffer instance during callbacks and LOB streamingConstantin Michael1-9/+19
2011-10-17Allocate LOB manipulation buffer in connection instance instead of in imageConstantin Michael3-17/+36
2011-10-14Small bug fixes and aesthetic changesConstantin Michael1-4/+8
2011-10-14Improve default LOB parameter callback implementationsConstantin Michael1-63/+21
2011-10-14Handle mapping of std::vector<char> to Oracle SQL type RAW by defaultConstantin Michael2-0/+49
2011-10-14Correct the LOB callback aspects of the bind mechanismConstantin Michael3-17/+22
The parameter callback context must be const qualified. This is both sensible and necessary to avoid unecessary casts in the generated code during image manipulation. The result callback context must not be const qualified as the result callback should be permitted to modify it. Both the callback and context members of the bind structure must be pointers to the relevant union types in order for the binding mechanism to work correctly.
2011-10-14Correct logic used to indicate exhaustion of query result dataConstantin Michael1-2/+4
2011-10-14Small bug fixes and aesthetic changesConstantin Michael2-9/+11
2011-10-14Const qualify buffer argument in parameter callback function signatureConstantin Michael3-6/+8
2011-10-14Adhere to OCI recommendations for unused arguments when binding callbacksConstantin Michael1-6/+7
2011-10-14Create separate OCI buffer type lookups for parameter and result buffersConstantin Michael1-6/+26
This is required due to the asymmetric manner in which LOB types are persisted to and loaded from the database.
2011-10-14Add a RAW buffer typeConstantin Michael2-12/+14
This is required as OCI performs character set specific operations on string data. RAW data has no associated character set.
2011-10-14Use an auto_descriptor pointer to manage a bound result LOBConstantin Michael3-2/+32
This simplifies resource management in the generated code.
2011-10-14Add OCILobLocator to the set of descriptor types that auto_descriptor managesConstantin Michael2-1/+7
2011-10-14Allow for size to be returned from big_int set_image functionsConstantin Michael3-12/+51
The OCI interface requires size information for any buffer passed to its bind interface. By adding a return path for this data, we avert any need to obtain this from the actual VARNUM binary data using messy byte manipulation.
2011-10-14Const qualify input buffer in big_int_value_traits::set_value signatureConstantin Michael1-2/+2
2011-10-14Correct syntax errorConstantin Michael1-1/+1
2011-10-14Enable statement cache in connectionConstantin Michael2-13/+14
2011-10-11Bump versionConstantin Michael2-4/+4
2011-10-07Correct commentConstantin Michael1-2/+1
2011-10-06Add commentsConstantin Michael2-0/+8
2011-10-03Bump version to 1.6.0.a2Constantin Michael2-4/+4
2011-09-29Add character set and national character set arguments to database constructorConstantin Michael2-9/+43
2011-09-29Add assertion for mismatch of result set column countConstantin Michael1-2/+14
This is useful for detecting native views that happen to have stray data members.
2011-09-29Implement custom bind buffer type identifiers.Constantin Michael3-31/+103
This allows for the association of a character set with a character data buffer, something that is impossible using only OCI external typecodes.
2011-09-28Correct casting error in id_big_int default_value_traits specializationConstantin Michael1-1/+1
2011-09-27Correct commentConstantin Michael1-1/+1
2011-09-27Implement partial specialization of default_value_traits for id_big_intConstantin Michael2-0/+63
2011-09-27Pass parameter callback user context as a const void*Constantin Michael3-16/+16
This avoids usage of const_cast when manipulating the const qualified values in set_image functions within the traits implementations.
2011-09-27Implement callbacks as non-inline functionsConstantin Michael2-41/+54
2011-09-27Map long and long long to id_big_int by defaultConstantin Michael1-4/+4
2011-09-27Add const char[n] value_traits specialization in addition to char[n]Constantin Michael1-0/+29
2011-09-27Add our own national character buffer type identifiersConstantin Michael1-0/+9
2011-09-27Add sanity check for integer buffer capacity in OCI versions earlier than 11.2Constantin Michael1-0/+20
2011-09-27Implement traitsConstantin Michael3-380/+755
2011-09-27Use char* instead of unsigned char* as binary data buffer typeConstantin Michael2-35/+50
2011-09-27Correct license line in file headersConstantin Michael15-15/+15
2011-09-26Redefine id_int64 image type to be a byte arrayConstantin Michael1-1/+1
2011-09-26Reimplement Oracle NUMBER to/from C++ integer type conversionsConstantin Michael4-136/+301
The implementation has been moved to the details namespace. Signed and unsigned 32 bit versions, as well as an unsigned 64 bit version have also been added.
2011-09-23Add missing headers and hoist std namespace declarations into globalConstantin Michael1-1/+4
2011-09-23Add traits implementationConstantin Michael2-0/+728
2011-09-23Refactor callback union declaration to odb::oracle namespace scopeConstantin Michael1-5/+7
2011-09-23Correct missing variable declarationConstantin Michael1-0/+1
2011-09-23Correct commentConstantin Michael1-4/+4
2011-09-21Improve LOB streaming in select statementConstantin Michael1-32/+10
Passing 0 as an initial read amount to OCILobRead2 initiates a continuous polling mode. Once the EOF has been read, OCILobRead2 will return indicating success.