SODBC_NOUNSIGNED

Ignore the “Negative allowed” Repository setting

WSupported on Windows
USupported on Unix
VSupported on OpenVMS
NSupported in Synergy .NET

The SODBC_NOUNSIGNED environment variable instructs dbcreate to ignore “Negative allowed” Repository settings for fields when creating the system catalog.

Any value.

By default, SODBC_NOUNSIGNED is not set; dbcreate checks the “Negative allowed” Repository setting to determine if the resulting column will be signed or unsigned.

If you set SODBC_NOUNSIGNED to any value, dbcreate sets numeric fields to signed unless they have validation ranges that are limited to positive values (in which case the resulting columns will be unsigned). This matches the behavior for Connectivity Series versions prior to 8.3.

This setting affects catalog generation only. If you use SODBC_NOUNSIGNED, set it before generating or regenerating the system catalog. It does not need to be set at runtime.

SODBC_NOUNSIGNED is especially relevant for AutoSeq fields. AutoSeq fields automatically have the Repository “Negative allowed” setting set to No. Without SODBC_NOUNSIGNED, dbcreate describes AutoSeq columns as unsigned SQL_BIGINT columns in the system catalog. With SODBC_NOUNSIGNED set during catalog generation, dbcreate describes those same columns as signed SQL_BIGINT columns instead. The SQL type remains SQL_BIGINT in both cases; only the signed/unsigned attribute changes. Note that this difference can affect client APIs. For example, the .NET ODBC provider maps unsigned SQL_BIGINT to System.Decimal and signed SQL_BIGINT to System.Int64.

The environment where you run dbcreate.

xfODBC

Instructing dbcreate to ignore Repository’s “Negative allowed” field (SODBC_NOUNSIGNED)

In the environment on Windows,

set SODBC_NOUNSIGNED=1