bem, o primeiro conjunto de caracteres é Unicode, que basicamente suporta todos os idiomas. O segundo ("P1") é o ASCII da Europa ocidental, suportando inglês e alguns caracteres extra-ocidentais.
Então,
- em quais idiomas estão seus dados? que idiomas você precisará apoiar?
- Deseja converter o UNICODE db em ASCII db ou vice-versa?
A conversão de WE8 ... P1 para Unicode pode ser feita facilmente exportando (configurando NLS_LANG para WE8..P1), criando um novo banco de dados vazio e importando (novamente, configurando NLS_LANG para WE8..P1). No entanto, a conversão para Unicode tem alguns efeitos colaterais, especialmente em relação aos limites de qualquer coluna varchar2 - se era varchar2 (20), normalmente significa 20 bytes, portanto, ao usar Unicode, 20 bytes podem conter menos caracteres (não ingleses). Assim, para evitar o truncamento de dados, algumas colunas podem precisar ser ampliadas ... Todos os detalhes estão aqui:
Converter de UTF8 para WE8..P1 é novamente, exportar com NLS_LANG = WE8 ... P1 (agora você perderá todos os caracteres que não mapearem para P1 ASCII, como árabe, chinês, etc.), criando um vazio We8..P1 e importando os dados com NLS_LANG = WE8ISO8859P1.