Valeu Chiappa,

Acho que seus esclarecimentos estão corretíssimos.
Agradeço pela atenção dispensada.

Você matou a questão, o problema é a definição das colunas nas 
tabelas que estão declaradas com VARCHAR2(XXX BYTES).  Esta 
definição eu não posso mudar porque é original dos sistemas que 
tenho na empresa, portanto somente me resta a alternativa de 
redefinir os parâmetros do banco para que suporte estes schemas 
utilizando o formato single-byte.

Eu já havia lido superficialmente o manual que você mencionou, porém 
não detalheis estas informações porque assim que concluí a 
instalação do XE já tentei importar um dump.  Então depois que 
apareceram estes problemas é que comecei a pesquisar.

O manual de instalação do XE p/ RHEL4 aborda estes assuntos, porém 
não aprofunda, então depois que revisei este manual é que fui ver 
que esta opção é default para a instalação do XE.

Vou verificar os parâmetros da NLS conforme o SELECT que você 
sugeriu.  Acredito que suas sugestões serão suficientes para 
resolver a questão.

Mais uma vez, muito obrigado!

--- Em [email protected], "jlchiappa" <[EMAIL PROTECTED]> 
escreveu
>
> --- Em [email protected], "Williams Keener" 
<[EMAIL PROTECTED]>
> > Entendi o que você disse, entretanto mesmo se eu logar com o 
usuário
> > ORACLE no ambiente caracter ou X-Windows o erro é o mesmo.
> 
> Tá, mas seja caracter seja x-windows, vc CONFERIU O AMBIENTE ???
> 
> > Quanto ao profile
> 
> repito, .pofile é usado SE vc estiver em modo texto e em ALGUNS
> shells, se for born ou c shell ** NÃO É ** no "profile" que vc 
olha,
> sim ?? Tranquilamente vc PODE ter as vars corretas no .pofile MAS 
se
> vc logou por uma shell que NÂO USA .profile, de nada adiantará, 
sim ???
> 
> > a única questão é que o Oracle está usando dois bytes para
> > cada letra acentuada ao invés de um.  
> 
> Em vc REALMENTE consultando o ambiente e vendo que as vars TODAS 
estão
> setadas e OK, a possibilidade (reforçada pelo que vc coloca acima) 
é
> que simplesmente o banco está configurado para characterset 
multibyte,
> aonde todos os caracteres especiais ocupem mais de um byte  (e *** 
NÃO
> É *** só acentos, é QUALQUER caracterer acima de ASCII-127, tal 
como
> euro, barras, símbolos, etc), E a tabela foi criada não respitando
> isso : pra ver o chacaterset do banco, peça um select * from
> NLS_DATABASE_PARAMETERS;
>  veja, quando vc cria a tabela é VOCÊ que define como a coluna 
reserva
> espaço, se vc criar com  sintaxes tipo :
> 
> CREATE TABLE ttt (
>  c1 char(30)
> 
> ou 
> 
> CREATE TABLE ttt (
> 
>  c1 char(30 byte)
> 
> o que vc está MANDANDO o banco fazer é reservar 30 BYTES pra coluna
> c1, SE o banco tem characterset multibyte onde alguns caracteres 
usam
> mais do que um byte, vc LOGICAMENTE nos casos acima pode não 
conseguir
> enfiar os 30 caracteres... É a questão, vc tem um pino quadrado 
(banco
> que exige mais de 1 byte por caracter, tabela com 30 bytes no 
máximo
> na coluna) e um furo redondo (coluna que só aceita 30 bytes E
> necessidade de inserir até 30 caacteres), simplesmente NÂO VAI
> FUNCIONAR, e não vai funcionar porque OU o banco foi erradamente
> criado como multibyte se não havia necessidade OU a tabela foi 
criada
> erradamente, é isso.... O manual "Oracle Database Globalization
> Support Guide" no cap. 2 - Choosing a Character Set link "Length
> Semantics" explica isso em detalhes, SE vc tem em mãos um banco com
> characterset multibyte esse manual é leitura OBRIGATÓRIA...
> 
>  Então a resposta é : SE é a questão do characterset do banco que 
está
> pegando aí, OU vc converte o banco pra um characterset single-
byte, OU
>  passa as colunas pra reservarem espaço POR CARACTERES, e não por 
bytes...
> 
> []s
> 
>  Chiappa
> 
> 
> 
> ===========================================================
> Participe do ENPO - Encontro de Profissionais Oracle 2006 ! 
> Informações e inscrições em www.enpo-br.org
> José Laurindo Chiappa, Palestrante ENPO-2006
> ===========================================================
>







--------------------------------------------------------------------------------------------------------------------------
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/[email protected]/ 
--------------------------------------------------------------------------------------------------------------------------__________________________________________________________________
Vem aí: ENPO-BR 2006 - Encontro Nacional de Profissionais Oracle
VISITE: http://www.enpo-br.org/ - Dia 11/11 "Vagas Limitadas"
__________________________________________________________________
Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine  
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 



Responder a