| Author |
store $FF on Oracle9 with VARCHAR2 type
|
|
| pcouas@infodev.fr 2005-07-14, 9:23 am |
| Hi,
Before i use an Oracle8.0.4 on AIX 4.3.2 and i could store $FF value
in VARCHAR2 type.
Now i have an Oracle9.2.0.4 on Redhat and $FF are translated to $7F,
I could not use RAW type
My Charset is US7ASCII
So, How could i store $FF ?
Thanks
Philippe
| |
| Svend Jensen 2005-07-14, 1:23 pm |
| pcouas@infodev.fr wrote:
> Hi,
>
>
> Before i use an Oracle8.0.4 on AIX 4.3.2 and i could store $FF value
> in VARCHAR2 type.
> Now i have an Oracle9.2.0.4 on Redhat and $FF are translated to $7F,
> I could not use RAW type
> My Charset is US7ASCII
> So, How could i store $FF ?
>
> Thanks
> Philippe
You can't.
You use 7 bit us-ascii, max. value for 7 bit is 0x7F.
Create new 8 bit database or switch charset.
rgds
/Svend
| |
| pcouas@infodev.fr 2005-07-18, 3:23 am |
| Hi,
Could you says me which charset using 8 bit ?
Regards
Philippe
| |
| sybrandb@yahoo.com 2005-07-18, 3:23 am |
| The default 8-bit characterset for *nixes is
WE8ISO8859P15
Obviously this is documented (in the Globalization manual) and
apparently you refuse to read documentation.
--
Sybrand Bakker
Senior Oracle DBA
| |
| pcouas@infodev.fr 2005-07-20, 11:23 am |
| Hi,
I have replace USASCII charset by WE8ISO8859P1, but i could not insert
0xff value in my VARCHAR2 field and i could not use RAW type, because
my supplier don't use it.
Regards
Philippe
| |
| pcouas@infodev.fr 2005-07-20, 1:23 pm |
| Hi,
I have changed my charset to WE8ISO8859P1 without best result .
I could not insert 0xff value in my Oracle 9.2.0.4 Database.
mY VARCHAR2 field don't accept it, and i could not use RAWTYPE
Regards
Philippe
| |
| Frank van Bortel 2005-07-20, 8:23 pm |
| pcouas@infodev.fr wrote:
> Hi,
>
> I have changed my charset to WE8ISO8859P1 without best result .
> I could not insert 0xff value in my Oracle 9.2.0.4 Database.
> mY VARCHAR2 field don't accept it, and i could not use RAWTYPE
>
> Regards
> Philippe
Please explain WHERE you changed the character set from US7ASCII
to WE8ISO8859P1 - it should be the database, not (only) the
client
--
Regards,
Frank van Bortel
| |
| pcouas@infodev.fr 2005-07-21, 3:23 am |
| Hi,
I have changed in DataBase
ALTER DATABASE CHARACTER SET <new set>;
ALTER DATABASE NATIONAL CHARACTER SET <new national set> ;
Philippe
| |
| pcouas@infodev.fr 2005-07-21, 3:23 am |
| Hi,
My Database parameters are now
PARAMETER VALUE
NLS_LANGUAGE AMERICA
N
NLS_TERRITORY AMERIC
A
NLS_CURRENCY $
NLS_ISO_CURRENCY AME
RICA
NLS_NUMERIC_CHARACTE
RS .,
NLS_CHARACTERSET WE8
ISO8859P1
NLS_CALENDAR GREGORI
AN
NLS_DATE_FORMAT DD-MON-RR
NLS_DATE_LANGUAGE AM
ERICAN
NLS_SORT BINARY
NLS_TIME_FORMAT HH.MI.SSXFF AM
NLS_TIMESTAMP_FORMAT
DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT H
H.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FOR
MAT DD-MON-RR HH.MI.SSXFF AM TZR
NLS_DUAL_CURRENCY $
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS
BYTE
NLS_NCHAR_CONV_EXCP
FALSE
NLS_NCHAR_CHARACTERS
ET AL16UTF16
NLS_RDBMS_VERSION 9.2.0.4.0
Regards
Philippe
| |
| Frank van Bortel 2005-07-21, 11:23 am |
| pcouas@infodev.fr wrote:
> Hi,
>
>
> My Database parameters are now
>
> PARAMETER VALUE
> NLS_LANGUAGE AMERICA
N
> NLS_TERRITORY AMERIC
A
> NLS_CURRENCY $
> NLS_ISO_CURRENCY AME
RICA
> NLS_NUMERIC_CHARACTE
RS .,
> NLS_CHARACTERSET WE8
ISO8859P1
OK - looks fine.
What error occurs, and how do you insert?
--
Regards,
Frank van Bortel
| |
| pcouas@infodev.fr 2005-07-22, 3:23 am |
| Hi,
Insert is made by Program, i don't see SQL parameters.
(If you have SQL instruction for insert directly !)
$FF are translated to $7C
Regards
Philippe
| |
| sybrandb@yahoo.com 2005-07-22, 7:23 am |
| So the MSB is stripped off, and you have a 7-bit characterset (or 7-bit
characterset settings) in the database/ on the database server, and
8-bit settings at the client side.
Or in the past, you had 7-bit client and 7-bit database. As
charactersets are equal, there will be no conversion and bit 7 will
pass. However, as soon as you export it, using 7-bit NLS_LANG settings,
exp will strip bit 7.
And when you re-import it, the 8-bit characters won't automagically
arise from their grave.
(This only 'appens in the British comedy 'Allo 'Allo, where the bravest
man of France is catapulted from his grave on a telescope antenna ;)
Hth
--
Sybrand Bakker
Senior Oracle DBA
| |
| pcouas@infodev.fr 2005-07-22, 9:23 am |
| Just an Idea,
There is no NLS_CHARSET in my Linux variable environnement for my Linux user ?
Do you think this is an problems ??
Regards
Philippe
| |
| Frank van Bortel 2005-07-22, 1:23 pm |
| pcouas@infodev.fr wrote:
> Just an Idea,
>
> There is no NLS_CHARSET in my Linux variable environnement for my Linux user ?
> Do you think this is an problems ??
>
> Regards
> Philippe
default would be AMERICAN_AMERICA.US7ASCII, so....
--
Regards,
Frank van Bortel
| |
| Maxim Demenko 2005-07-22, 8:23 pm |
| pcouas@infodev.fr wrote:
> Just an Idea,
>
> There is no NLS_CHARSET in my Linux variable environnement for my Linux user ?
> Do you think this is an problems ??
>
> Regards
> Philippe
For your linux environment locale are following variables responsible:
LC_CTYPE
LC_COLLATE
LC_MONETARY
LC_NUMERIC
LC_TIME
LC_MESSAGES
LC_ALL
LANG
Oracle evaluates NLS_LANG variable, but has no clue about NLS_CHARSET.
NLS_CHARSET variable can be set, but it will be not evaluated nor from
linux, neither from oracle.
In Oracle terms NLS_CHARSET is used for characterset of your database,
which you can define by creation of database and later ( under some
circumstances ) change only by "ALTER DATABASE CHARACTER SET
new_character_set" (
http://download-west.oracle.com/doc...h10.htm#1009904
http://download-uk.oracle.com/docs/....htm#sthref1343)
and you can not control it by setting of environment variables.
Best regards
Maxim
| |
| pcouas@infodev.fr 2005-07-25, 3:26 am |
| Ok,
I tried to modify my Linux Language with
export LANG=en_US
export NLS_LANG=americain_a
merica.WE8ISO8859P1
Philippe
| |
| pcouas@infodev.fr 2005-07-25, 3:26 am |
| Hi,
I have changed my i18n file to French for accent problem after
installing Oracle's database like this
LANG="fr_FR.UTF-8"
SUPPORTED="fr_FR.UTF-8:fr_FR:fr"
SYSFONT="latarcyrheb-sun16"
This is perhaps my problem i modify it to
LANG="en_US"
NLS_LANG="americain_america.WE8ISO8859P1"
But i don't know which value for SUPPORTED and SYSFONT ??
Regards
Philippe
|
|
|
|