192 Commits

Author SHA1 Message Date
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
Anthony Tuininga
ead5831ccb Added test case for the new feature getimplicitresults(). 2016-01-22 11:48:46 -07:00
Anthony Tuininga
8584a5d5f8 Simplify test suite by combining Python 2 and 3 scripts into one script that
runs on both without changes; rename ArrayDMLBatchError to Features12_1 in
preparation for adding additional 12.1 features.
2016-01-22 11:18:31 -07:00
Anthony Tuininga
2ba419ebd6 Updated test cases to use the correct names for the various assertions instead
of the deprecated names.
2016-01-21 09:59:03 -07:00
Anthony Tuininga
0e35397616 Added test case for pickling/unpickling error objects. 2016-01-21 09:43:00 -07:00
Anthony Tuininga
39e078eaf8 Display the file that is being used for the test run (useful when multiple
environments are being used).
2016-01-18 21:00:19 -07:00
Anthony Tuininga
8c1e6f68e4 Added support for binding boolean values to PL/SQL booleans -- a feature that
is only available in Oracle 12.1 and higher.
2016-01-14 21:41:36 -07:00
Anthony Tuininga
168d61670e Removed password attribute from connection and session pool objects in order
to promote best security practices (if stored in RAM in cleartext it can be
read in process dumps, for example). For those who would like to retain this
feature, a subclass of Connection could be used to store the password.
2015-07-31 14:31:13 -06:00
Anthony Tuininga
3c36e8cde3 Added support for NCHAR, FIXED_NCHAR and LONG_NCHAR, which are the same as the
types UNICODE, FIXED_UNICODE and LONG_UNICODE (now deprecated).
2015-06-06 21:01:37 -06:00