tests. Although the two are aliases of one another, it makes sense to be consistent and to use the one that the DB API prefers as well.
34 lines
1.3 KiB
Python
34 lines
1.3 KiB
Python
#------------------------------------------------------------------------------
|
|
# Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
|
|
#
|
|
# Portions Copyright 2007-2015, Anthony Tuininga. All rights reserved.
|
|
#
|
|
# Portions Copyright 2001-2007, Computronix (Canada) Ltd., Edmonton, Alberta,
|
|
# Canada. All rights reserved.
|
|
#------------------------------------------------------------------------------
|
|
|
|
#------------------------------------------------------------------------------
|
|
# ReturnUnicode.py
|
|
# Returns all strings as unicode. This also demonstrates the use of an output
|
|
# type handler to change the way in which data is returned from a cursor.
|
|
#
|
|
# This script requires cx_Oracle 5.0 and higher.
|
|
#------------------------------------------------------------------------------
|
|
|
|
from __future__ import print_function
|
|
|
|
import cx_Oracle
|
|
import SampleEnv
|
|
|
|
def OutputTypeHandler(cursor, name, defaultType, size, precision, scale):
|
|
if defaultType in (cx_Oracle.STRING, cx_Oracle.FIXED_CHAR):
|
|
return cursor.var(unicode, size, cursor.arraysize)
|
|
|
|
connection = cx_Oracle.connect(SampleEnv.MAIN_CONNECT_STRING)
|
|
connection.outputtypehandler = OutputTypeHandler
|
|
cursor = connection.cursor()
|
|
cursor.execute("select * from TestStrings")
|
|
for row in cursor:
|
|
print("Row:", row)
|
|
|