28 Commits

Author SHA1 Message Date
Anthony Tuininga
39805c66d7 Added support for binding objects with sub objects attached to them; ensured
that instances are created when an empty object variable is created; enhanced
test cases for binding objects.
2016-02-11 11:47:46 -07:00
Anthony Tuininga
cb3f833a63 Added support for binding objects and setting attributes on objects of numbers,
strings and dates.
2016-02-09 14:51:30 -07:00
Anthony Tuininga
4e1c26a3dc Eliminate unnecessary initialization code. 2016-02-08 10:32:11 -07:00
Anthony Tuininga
6b5b9887f8 Eliminated potential memory leak. 2016-01-27 15:04:37 -07:00
Anthony Tuininga
c863777917 Added support for pickling/unpickling error objects; this addresses issue 23
(https://bitbucket.org/anthony_tuininga/cx_oracle/issues/23/cx_oracle_error-is-not-un-picklable)
2016-01-20 16:39:25 -07:00
Anthony Tuininga
af5fb55759 Remove #ifdef surrounding OCI_EVENTS since it was defined in Oracle 10g, the
minimum release supported by cx_Oracle.
2015-04-25 19:38:28 -06:00
Anthony Tuininga
85b6adeb6b Reorganize the code for handling errors so that the same code can be used for
managing batch errors as well as raising exceptions in the ordinary case.
2015-02-25 21:50:30 -07:00
Anthony Tuininga
faadbe4730 Remove code specific to strings being 4000 characters now that Oracle 12c has
the ability to have strings up to 32k characters. This implies that using
setinputsizes() is necessary if a long string type is desired as this will not
occur automatically when the string exceeds 4000 characters. Tests are tidied
up to remove the "p_" prefix from all bind variables.
2014-09-04 22:33:08 -06:00
nleschev
75f70a6058 Fixed two memoty leaks 2013-11-28 13:25:04 +04:00
Anthony Tuininga
04f1904a7d Remove "unicode" mode and simply permit unicode to be used everywhere within
cx_Oracle; stop using "unicode" mode in the OCI as well since that appears to
have bugs in some places and doesn't really solve any problems anyway.
2011-02-19 03:50:16 +00:00
Anthony Tuininga
dbb4fadc84 Added additional error codes to those treated as operational errors as
suggested by Christopher Jones.
2009-08-25 03:10:24 +00:00
Anthony Tuininga
c8b805d644 Added ORA-3135 to the list of errors that raise OperationalError instead of
DatabaseError as requested by Zherdev Anatoly.
2009-08-14 15:50:09 +00:00
Anthony Tuininga
e00d8dc231 Allow events mode to be set in Oracle 10g as well. 2009-01-07 20:30:10 +00:00
Anthony Tuininga
607f9019d1 Call the type's tp_free and tp_alloc methods at all times in order to deal with
inheritance properly; use "self" at all times in the constructor and destructor
routines.
2009-01-06 15:46:54 +00:00
Anthony Tuininga
2fc59ecb8d Ensure that the cloned environment is retained until all environment objects
that were cloned from it have been destroyed.
2008-11-11 21:55:56 +00:00
Anthony Tuininga
3e6a6ef8b2 Use the same environment handle in connections acquired from the pool as using
a new environment handle results in strange errors in certain situations.
2008-11-11 21:25:05 +00:00
Anthony Tuininga
5b6a9b017a Raise a cx_Oracle.Error instance for invalid handle as well in order to make
debugging of such error messages simpler.
2008-11-11 20:38:06 +00:00
Anthony Tuininga
515bca0f96 All test cases now run correctly in Unicode mode. There are still additional
things that need to be dealt with but the majority of the code has now been
transformed to use either Unicode or encoded strings with Oracle.
2008-10-15 22:45:29 +00:00
Anthony Tuininga
2e26d0beb8 Continued work on Unicode support; added new test cases for full unicode
support within Python 2.x; move away from character semantics which Oracle is
deprecating anyway to byte semantics which should hopefully eliminate the
problem with a backend character set of UTF-8.
2008-10-14 04:51:43 +00:00
Anthony Tuininga
c424a823a8 First cut at adding support for full unicode which is required by Python 3 but
the code is structured so that this can be done with Python 2.x as well if
desired; the only thing currently working is the determination of error
messages.
2008-10-10 04:18:05 +00:00
Anthony Tuininga
6c13ccbe5f Use macro PyVarObject_HEAD_INIT as suggested by Amaury Forgeot d'Arc in order
to facilitate migration to Python 3.0.
2008-10-02 17:34:16 +00:00
Anthony Tuininga
6b1a551997 Use a cx_Oracle.Error instance rather than a string to hold the error as
requested by Helge Tesdal.
2008-09-26 04:52:47 +00:00
Anthony Tuininga
659da4554c Include the "cannot insert null value" in the list of errors that are treated
as integrity errors as requested by Matt Boersma.
2008-08-21 17:20:35 +00:00
Anthony Tuininga
58c10b68ae Inital cut of support for DRCP and events mode as requested by Christopher
Jones.
2008-07-06 05:08:01 +00:00
Anthony Tuininga
be449a8048 Translated some error codes to OperationalError as requested by Matthew
Harriger; translated if/elseif/else logic to switch statement to make it more
readable and to allow for additional translation if desired.
2008-05-21 17:16:18 +00:00
Anthony Tuininga
43dcfe1ea8 Use cx_Oracle.InterfaceError rather than the builtin RuntimeError as requested
by Luke Mewburn since the error is specific to Oracle and someone attempting to
catch any exception cannot simply use cx_Oracle.Error.
2007-10-31 13:38:51 +00:00
Anthony Tuininga
5025b4eb22 Replaced all tabs with spaces. 2007-06-27 14:00:34 +00:00
Anthony Tuininga
104e11b67a Last public release from Computronix. 2007-06-13 21:15:16 +00:00