Re: Toubles Storing ASCII character greater than 127

From: ddf <oratune_at_msn.com>
Date: Tue, 20 Apr 2010 13:11:56 -0700 (PDT)
Message-ID: <e7bb88fc-0fca-44a9-917e-1a43f32b0bdf_at_n20g2000prh.googlegroups.com>



Comments embedded.

On Apr 20, 1:32 pm, "George K." <kara..._at_gmail.com> wrote:
> Hello all,
>
> Let me start by saying that I am new to Oracle so please excuse my
> ignorance.
>
> I have this problem whereby when I insert any characters from the the
> ASCII character set with code >= 127 Oracle seems to change its
> representation to a '?'--so when I select the data from either sqlplus
> or my program (perl using DBI) I do not get the same data I stored.
>

These inserts are from a client machine I presume. If you do this on the database server do you see the same behaviour? What are the NLS settings on the client? This is where your problem orignates, I expect.

> My test table definition is as follows and I have tried this with both
> nvarchar2 and varchar2 with the same result.
> create table tester ( tester_id NUMBER(19,0) not null, tester_data
> varchar2(2000));
>
> Here's my NLS_DATABASE_PARAMETERS table for your benefit:
>
>  PARAMETER               VALUE
>  ----------------------- ----------------------------
>  NLS_LANGUAGE            AMERICAN
>  NLS_TERRITORY           AMERICA
>  NLS_CURRENCY            $
>  NLS_ISO_CURRENCY        AMERICA
>  NLS_NUMERIC_CHARACTERS  .,
>  NLS_CHARACTERSET        AL32UTF8
>  NLS_CALENDAR            GREGORIAN
>  NLS_DATE_FORMAT         DD-MON-RR
>  NLS_DATE_LANGUAGE       AMERICAN
>  NLS_SORT                BINARY
>  NLS_TIME_FORMAT         HH.MI.SSXFF AM
>  NLS_TIMESTAMP_FORMAT    DD-MON-RR HH.MI.SSXFF AM
>  NLS_NCHAR_CHARACTERSET  AL16UTF16
>  NLS_TIME_TZ_FORMAT      HH.MI.SSXFF AM TZR
>  NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
>  NLS_DUAL_CURRENCY       $
>  NLS_COMP                BINARY
>  NLS_LENGTH_SEMANTICS    BYTE
>  NLS_NCHAR_CONV_EXCP     FALSE
>
> Any ideas will be greatly appreciated.
>
> George

Those are server settings, not the client-side values. Check how your Oracle client is configured as I expect it's not the same as the database server and therein lie the problems.

David Fitzjarrell Received on Tue Apr 20 2010 - 15:11:56 CDT

Original text of this message