Thiago Risso escreveu: > 2008/5/28 jota. comm <[EMAIL PROTECTED]>: >> Olá, pessoal >> >> Fiquei confuso em algumas coisas, mas vamos lá: >> >> Quando o seu cluster é inicializado e nesta inicialização você específica a >> codificação e a localização que são coisas diferentes, o primeiro está >> voltado para a codificação do banco e o segundo influencia na ordenação. >> Quando você cria um banco de dados e não específica ele utiliza a >> codificação padrão do cluster, porém você pode criar bancos de dados com >> outras codificações, basta especificar o parâmetro -E pelo createdb ou pelo >> parêmetro encoding pelo create database. Com isso, eu posso ter banco de >> dados no mesmo cluster com várias codificações, por exemplo, bancos em UTF8, >> LATIN1, SQL_ASCII. > > > Ao ler este trecho eu que fiquei confuso.... então fui a constatação > .... Só é possível criar um cluster para a codificação a qual o seu SO > tenha suporte (meio óbvio, mas..) ... Ao tentar criar no ubuntu mesmo, > com o package da 8.3 instalado, um cluster LATIN1 (iso-8859-1) temos : > > trisso@@@@:~$ sudo pg_createcluster -e LATIN1 -d /home/trisso/test 8.3 > cluster-8.3-2 > [sudo] password for trisso: > Creating new cluster (configuration: > /etc/postgresql/8.3/cluster-8.3-2, data: /home/trisso/test)... > initdb: codificação não corresponde > A codificação que você escolheu (LATIN1) e a codificação que a > configuração regional > selecionada utiliza (UTF8) não tem correspondência. Isto pode conduzir > a um comportamento inesperado em funções de processamento de cadeia de > caracteres. > Execute novamente o initdb e não especifique uma codificação explicitamente > ou escolha uma outra combinação > >
Repare que documentação da versão 8.3 foi introduzido o seguinte parágrafo: "An important restriction, however, is that each database character set must be compatible with the server's LC_CTYPE setting. When LC_CTYPE is C or POSIX, any character set is allowed, but for other settings of LC_CTYPE there is only one character set that will work correctly. Since the LC_CTYPE setting is frozen by initdb, the apparent flexibility to use different encodings in different databases of a cluster is more theoretical than real, except when you select C or POSIX locale (thus disabling any real locale awareness)." http://www.postgresql.org/docs/current/interactive/multibyte.html#MULTIBYTE-CHARSET-SUPPORTED Osvaldo _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
