100 Commits

Author SHA1 Message Date
Anthony Tuininga
340dcb7195 Rework test suite and samples so that they are independent of each other and
so that the SQL scripts used to create/drop schemas are easily adjusted to
use different schema names, if desired. Improve documentation for test suite
and samples.
2017-07-14 16:50:41 -06:00
Anthony Tuininga
628d1717f5 Corrected support for binding boolean values with Oracle client 11.2. 2017-07-14 11:31:59 -06:00
Anthony Tuininga
c1005ddcac Added test cases for AQ enqueue/dequeue options and message properties
(https://github.com/oracle/odpi/issues/16).
2017-07-13 13:57:29 -06:00
Anthony Tuininga
1d768706ab Python 2.7 requires the "u" prefix. 2017-07-08 21:23:27 -06:00
Anthony Tuininga
49b0afd7a5 Ensure the correct encoding is used for setting variable values. 2017-07-07 07:38:44 -07:00
Anthony Tuininga
18e06bf14a Corrected support for binding decimal values in object attribute values and
collection element values.
2017-07-07 07:38:15 -07:00
Anthony Tuininga
888fd89fce Update DB API test stub to match latest version of test suite and cx_Oracle. 2017-07-05 13:19:07 -06:00
Anthony Tuininga
f555a10f36 Add support for Python 3 in DB API test suite stub. 2017-07-05 13:17:50 -06:00
Anthony Tuininga
d008553dc1 Add script for dropping the test schemas; add copyright and information on how
to execute to the SetupTest.sql script.
2017-06-16 16:48:15 -06:00
Anthony Tuininga
b543850f9a The method cursor.setoutputsize() no longer needs to do anything (since ODPI-C
automatically manages buffer sizes of LONG and LONG RAW columns).
2017-06-16 16:47:21 -06:00
Anthony Tuininga
fa4faa2718 Update ODPI-C which has added an optimization to reduce buffer size when both
the client and server character sets are identical and corrected support for
BFILE LOBs.
2017-06-16 16:43:41 -06:00
Anthony Tuininga
465da44482 Permit use of both string and unicode for Python 2.7 for creating session pools
and for changing passwords
(https://github.com/oracle/python-cx_Oracle/issues/23).
2017-06-10 13:54:10 -06:00
Anthony Tuininga
f4009ebabd Add tests for specifying only the encoding or only the nencoding. 2017-06-10 11:32:25 -06:00
Anthony Tuininga
e783a33926 Handle case when both precision and scale are zero, as occurs when retrieving
numeric expressions (https://github.com/oracle/python-cx_Oracle/issues/34).
2017-06-09 14:21:24 -06:00
Anthony Tuininga
52e1960bfb Correct determination of the names of the bind variables in prepared SQL
tatements (which behaves a little differently from PL/SQL statements).
2017-05-19 21:47:46 -06:00
Anthony Tuininga
2e240bc154 Prevent attempts from binding the cursor being executed to itself. 2017-05-16 13:23:20 -06:00
Anthony Tuininga
51f1815167 Added support for getting/setting attributes of objects or element values in
collections that contain LOBs, BINARY_FLOAT values, BINARY_DOUBLE values and
NCHAR and NVARCHAR2 values; improve error message for any other types that are
not supported.
2017-05-09 11:46:30 -06:00
Anthony Tuininga
53f8902446 Correct handling of long Python integers that cannot fit inside a 64-bit C
integer (https://github.com/oracle/python-cx_Oracle/issues/18).
2017-05-03 13:31:13 -06:00
Anthony Tuininga
c946e86384 Correct support for executemany() when strings that are found later in the
array are larger than strings found earlier in the array.
2017-04-26 17:11:58 -06:00
Anthony Tuininga
8d7c828b89 Use an object type that is supported in both 11.2 and 12.1. 2017-04-18 13:04:23 -06:00
Anthony Tuininga
b429041a3e Add support for getting an empty list from an empty collection instead of the
error "OCI-22166: collection is empty".
2017-04-17 10:34:14 -06:00
Anthony Tuininga
3bc9bd2303 Added sample and test case to demonstrate use of universal rowids. 2017-04-11 16:12:06 -06:00
Anthony Tuininga
0b01d96404 Added support for smallint and float data types in Oracle objects, as requested
(https://github.com/oracle/python-cx_Oracle/issues/4).
2017-04-11 14:37:38 -06:00
Anthony Tuininga
d37669fbdc Create a new variable, rather than call dpiVar_resize(), so that the variable
will be bound properly when the variable needs to be resized.
2017-04-11 14:36:47 -06:00
Anthony Tuininga
0c82e0faa0 Added support for getting the number of actual elements in a variable as well
as getting all of the values corresponding to the number of actual elements in
a variable -- primarily to improve the use of DML returning of multiple rows.
2017-04-11 14:17:55 -06:00
Anthony Tuininga
7f70d189b2 Added support for smallint and float data types in Oracle objects, as requested
(https://github.com/oracle/python-cx_Oracle/issues/4).
2017-04-04 21:17:24 -06:00
Anthony Tuininga
b614a47ef2 Added copyright notices to the top of all tests and samples as requested. 2017-03-09 10:21:22 -07:00
Anthony Tuininga
b28e04e901 Rework to use the ODPI-C library instead of direct OCI calls. 2017-03-07 13:21:49 -07:00
Anthony Tuininga
73f61d8a07 Raise cx_Oracle.DatabaseError, not IndexError for a scroll operation that
would position the cursor outside of the result set.
2017-02-03 09:01:47 -07:00
Anthony Tuininga
0bcbd072a8 Use None instead of 0 for items in the cursor.description attribute that do not
have any validity.
2017-01-25 15:17:20 -07:00
Anthony Tuininga
7bf8ae65ca Correct execution of test suite on Windows which doesn't support UTF-8 by
default.
2017-01-16 15:20:14 -07:00
Anthony Tuininga
8fda704186 Adjusted test cases to make use of encoding and nencoding parameters to both
standalone connection and session pool creation; added test cases for binding
and fetching supplemental characters as well as fetching temporary LOBs; tidied
up a few test cases as well.
2017-01-13 18:14:45 -07:00
Anthony Tuininga
678476f5f0 Remove unnecessary section of TNS naming string (ADDRESS_LIST). 2017-01-13 11:37:52 -07:00
Anthony Tuininga
4185d96682 Adjusted samples to be clearer and to match the tables used in the test suite;
added new samples for DRCP and input/output type handlers.
2017-01-13 10:47:20 -07:00
Anthony Tuininga
c238f63b58 Tidy up documentation and remove unnecessary "tablespace users" clauses since
the default tablespace is defined anyway!
2017-01-12 15:29:31 -07:00
Anthony Tuininga
ab42359f26 Fix cursor.scroll() to calculate row count correctly in all situations and
add test cases to verify that it does in fact work.
2017-01-12 15:22:29 -07:00
Anthony Tuininga
0e50be2a08 Renamed table TestExecuteMany to TestTempTable to be more in keeping with its
actual uses (not just testing executemany()).
2017-01-12 15:20:44 -07:00
Anthony Tuininga
92ec23930b Added support for initializing a collection upon creation; provided a synonym
for newobject() in simply calling the type directly (as a convenience).
2016-02-24 14:16:40 -07:00
Anthony Tuininga
9aa9de0526 Return value is not an integer -- some versions of the Oracle client use
native integers and others will use regular numbers so specify that the return
value is in fact a regular number so that the test works correctly in all
cases.
2016-02-24 10:08:43 -07:00
Anthony Tuininga
238981860c Unicode test case needs to match the normal test case! 2016-02-23 17:08:54 -07:00
Anthony Tuininga
29e5529bf9 Added setup for the test records case. 2016-02-23 16:52:06 -07:00
Anthony Tuininga
d03854ccfe Added support for testing binding records in/out. Note that records must be
initialized before being bound as they are not initialized internally.
2016-02-22 09:38:34 -07:00
Anthony Tuininga
f4a24f3930 Added support for PL/SQL collections of booleans (available only in 12.1). 2016-02-16 16:32:00 -07:00
Anthony Tuininga
6f52f6ce39 Added support for manipluating PL/SQL collections (both ordered and unordered). 2016-02-16 15:51:01 -07:00
Anthony Tuininga
e9d5a70e25 Added preliminary support for binding collections (both SQL typed and PL/SQL
typed in Oracle 12.1).
2016-02-15 18:57:17 -07:00
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
cd9fced3e6 Remove deprecated variable attributes maxlength and allocelems. 2016-02-09 17:11:06 -07:00
Anthony Tuininga
3f701549c7 Correct variable references. 2016-02-05 19:37:51 -07:00
Anthony Tuininga
3eeff96403 Added support for scrollable cursors. 2016-02-05 17:19:40 -07:00
Anthony Tuininga
84cd718977 Added support for Transaction Guard by including the attributes
connection.ltxid and error.isrecoverable as well as a sample that indicates
how it could be used.
2016-01-26 14:19:45 -07:00