Environment Variables

Every setting available in the mds_global.ini file can also be set through an environment variable. This is useful for quick, temporary overrides — for example, enabling a trace before launching your application without editing any configuration files.

Naming Convention

To set an mds_global.ini setting via an environment variable, prefix the setting name with btr2sql_:

btr2sql_<SETTING_NAME>

For example, the mds_global.ini setting TRACE_ON becomes the environment variable btr2sql_TRACE_ON.

How It Works

When the driver starts, it checks for environment variables in addition to the mds_global.ini file. Environment variables sit below the mds_global.ini in the precedence order — meaning an mds_global.ini setting will override an environment variable if both are present.

Important

Environment variables are evaluated at driver load time. If you change an environment variable while the application is running, the driver will not pick up the new value until the application is restarted.

Enabling and Disabling on the Fly

Environment variables are especially handy for ad-hoc debugging. You can set them in your terminal session immediately before running your application, and they disappear when the session ends.

Windows Command Prompt (cmd)

set btr2sql_TRACE_ON=c:\trace\sql_btr.tra
set btr2sql_TRACE_LEVEL=-3
myapp.exe
rem Trace is active for this run only.
rem Close the terminal or unset the variables to stop tracing:
set btr2sql_TRACE_ON=
set btr2sql_TRACE_LEVEL=

Windows PowerShell

$env:btr2sql_TRACE_ON = "c:\trace\sql_btr.tra"
$env:btr2sql_TRACE_LEVEL = "-3"
.\myapp.exe
# Remove when done:
Remove-Item Env:btr2sql_TRACE_ON
Remove-Item Env:btr2sql_TRACE_LEVEL

Tip

Setting an environment variable to an empty string (e.g., set btr2sql_TRACE_ON=) effectively removes it. The driver will fall back to the next source in the precedence order (registry, then driver defaults).

Supported Environment Variables

Every mds_global.ini setting listed below can be used as an environment variable by adding the btr2sql_ prefix. Click any setting name for full documentation.

Trace Settings

Environment Variable

mds_global.ini Setting

btr2sql_TRACE_ON

TRACE_ON

btr2sql_TRACE_LEVEL

TRACE_LEVEL

btr2sql_TRACE_FLUSH

TRACE_FLUSH

btr2sql_TRACE_BUFFERS

TRACE_BUFFERS

btr2sql_TRACE_APP_GAP

TRACE_APP_GAP

btr2sql_TRACE_MEM_STAT

TRACE_MEM_STAT

btr2sql_TRACE_LOBS

TRACE_LOBS

btr2sql_TRACE_GETNEXT

TRACE_GETNEXT

btr2sql_TRACE_OVERWRITE

TRACE_OVERWRITE

btr2sql_TRACE_TIMING_GAP

TRACE_TIMING_GAP

Locking Settings

Environment Variable

mds_global.ini Setting

btr2sql_SERVER_SIDE_LOCKING

SERVER_SIDE_LOCKING

btr2sql_SQL_LOCKS

SQL_LOCKS

Performance Settings

Environment Variable

mds_global.ini Setting

btr2sql_PERFCOUNTER_REPORT

PERFCOUNTER_REPORT

btr2sql_QUERY_THRESHOLD

QUERY_THRESHOLD

btr2sql_TRACE_QUERY_TIMES

TRACE_QUERY_TIMES

btr2sql_USE_FAST_STAT

USE_FAST_STAT

Connection Settings

Environment Variable

mds_global.ini Setting

btr2sql_CONNECTION_RECOVERY

CONNECTION_RECOVERY

Data Handling Settings

Environment Variable

mds_global.ini Setting

btr2sql_ALLOW_NULL_IDX_FIELDS

ALLOW_NULL_IDX_FIELDS

btr2sql_DISABLE_REPLACEMENT_VALUES

DISABLE_REPLACEMENT_VALUES

btr2sql_TREAT_INVALID_VAL_AS_ERROR

TREAT_INVALID_VAL_AS_ERROR

btr2sql_ALLOW_EMPTY_DEFAULT_VALUES

ALLOW_EMPTY_DEFAULT_VALUES

btr2sql_SPACE_CHAR_AS_FILENAME_TERMINATOR

SPACE_CHAR_AS_FILENAME_TERMINATOR

Security and Control Settings

Environment Variable

mds_global.ini Setting

btr2sql_ALLOW_ASSERT_DIALOG

ALLOW_ASSERT_DIALOG

btr2sql_DISABLE_POPUPS

DISABLE_POPUPS

Language and Localization Settings

Environment Variable

mds_global.ini Setting

btr2sql_LANG_SUPPORT

LANG_SUPPORT

btr2sql_IDENTIFIER_CASE

IDENTIFIER_CASE

Version Settings

Environment Variable

mds_global.ini Setting

btr2sql_BTRIEVE_VERSION

BTRIEVE_VERSION

btr2sql_V4_COMPAT

V4_COMPAT

btr2sql_PERV_DLL_NAME

PERV_DLL_NAME

File and Path Settings

Environment Variable

mds_global.ini Setting

btr2sql_LIC_PATH

LIC_PATH

btr2sql_APP_NAME

APP_NAME

Cache Settings

Environment Variable

mds_global.ini Setting

btr2sql_CACHE_GETEQUAL

CACHE_GETEQUAL

btr2sql_MAX_CURSORS

MAX_CURSORS

Debug Settings

Environment Variable

mds_global.ini Setting

btr2sql_BREAKPOINTS

BREAKPOINTS