Skip to content

-oracle_nls_lang CLI parameter not working #59

@nbusseneau

Description

@nbusseneau

The -oracle_nls_lang CLI parameter does not seem to work, even though the code says it should:

nls_lang = _parameters->Get("-oracle_nls_lang");

The intermediate data extracted from Oracle and stored in tab-delimited files shows that data is retrieved using the default Oracle client NLS_LANG encoding (system-dependent).

As an alternative, one may set the NLS_LANG environment variable manually before calling sqldata:

export NLS_LANG=FRENCH_FRANCE.WE8ISO8859P1

PS: that's irrelevant to the issue at hand, but since it is a common mistake, a reminder to potential future readers that NLS_LANG should match the target database encoding, NOT the source database encoding (see https://www.oracle.com/database/technologies/faq-nls-lang.html for more details), in order for Oracle database to properly convert data before passing it to the client (and thus ensure it is properly stored in the intermediate tab-delimited files, before insertion to the target database).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions