Skip to main content

I've got a VC2000 column I'm considering expanding to VC4000.

From the help file:

VARCHAR2

The Varchar2 storage format is used to store variable-length character strings. You may specify up to a maximum of 4000 bytes for a Varchar2 column (the default length is one byte). Oracle uses variable-length storage techniques when it stores values in Varchar2 columns. When it compares two Varchar2 column values, Oracle uses non-padded comparison semantics.

But -

VC1-VC2000

Varchar2

VC2001-VCn

CLOB

Anyone care to explain how a VARCHAR2 with max 4000 bytes is suddenly swapped to a CLOB in Oracle?

More to the point - can I force Uniface to use a VC4000 as a VARCHAR2(4000)?

Knut

I've got a VC2000 column I'm considering expanding to VC4000.

From the help file:

VARCHAR2

The Varchar2 storage format is used to store variable-length character strings. You may specify up to a maximum of 4000 bytes for a Varchar2 column (the default length is one byte). Oracle uses variable-length storage techniques when it stores values in Varchar2 columns. When it compares two Varchar2 column values, Oracle uses non-padded comparison semantics.

But -

VC1-VC2000

Varchar2

VC2001-VCn

CLOB

Anyone care to explain how a VARCHAR2 with max 4000 bytes is suddenly swapped to a CLOB in Oracle?

More to the point - can I force Uniface to use a VC4000 as a VARCHAR2(4000)?

Knut

Uniface has to be told explicitly it's OK to go beyond VC2000 without automatically going to a CLOB. The driver settings section of the asn file has to include the varchar2_4k parameter. Then you can define the string (field) interface to vc4000.


Uniface has to be told explicitly it's OK to go beyond VC2000 without automatically going to a CLOB. The driver settings section of the asn file has to include the varchar2_4k parameter. Then you can define the string (field) interface to vc4000.

thx heaps.


I've got a VC2000 column I'm considering expanding to VC4000.

From the help file:

VARCHAR2

The Varchar2 storage format is used to store variable-length character strings. You may specify up to a maximum of 4000 bytes for a Varchar2 column (the default length is one byte). Oracle uses variable-length storage techniques when it stores values in Varchar2 columns. When it compares two Varchar2 column values, Oracle uses non-padded comparison semantics.

But -

VC1-VC2000

Varchar2

VC2001-VCn

CLOB

Anyone care to explain how a VARCHAR2 with max 4000 bytes is suddenly swapped to a CLOB in Oracle?

More to the point - can I force Uniface to use a VC4000 as a VARCHAR2(4000)?

Knut

In the doku on page

https://documentation.uniface.com/10/uniface/dbmsSupport/dbmsDrivers/Oracle/concepts/ORACLE_DRIVER_OPTS.htm?Highlight=USYS%24ORA_PARAMS

you will find the option only on the left side in the menu.


Regards

Norbert