Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Pagetitle
Collation, Character Set e CollationCharacter Set e Collation

  • Character set é um conjunto de símbolos e códigos.
  • Collation é o conjunto de informações e regras que descreve a comparação e ordenação dos caracteres de um de um character set.
    Banco de DadosCollationIBM DB2IBM-1252IBM Informix

    Type e Code Set/Encoding
    Collation, Character Type e Code Set/Encoding

    As aplicações 

    Inclusão de trecho
    AdvPL
    AdvPL
    nopaneltrue
    , principalmente rotinas legadas, que acessam os bancos de dados relacionais através do 
    Inclusão de trecho
    DBAccess
    DBAccess
    nopaneltrue
     requerem para o funcionamento que sejam respeitados a tabela de caracteres suportada, sua comparação e ordenação (comportamento legado):

    • Tabela de caracteres suportada: CP1252/Windows-1252 – Tabela de caracteres padrão do Windows que contempla os caracteres acentuados de idiomas latinos.
    • Ordenação e comparação: Binary Order (ordenação binária) – ordem crescente de acordo com o valor dos bytes de cada caractere.

    Para atender essa necessidade, a instância e/ou o banco de dados deve ser criado e/ou configurado de acordo com as definições a seguir:


    Banco de DadosCollationCharacter TypeCode Set/Encoding
    IBM DB2
    IDENTITY
    n/a
    1252
    IBM Informix
    (default = code-set)
    n/a
    EN_US.CP1252
    Microsoft SQL
    Latin1_General_BIN
    n/a
    n/a
    MySQL
    latin1_bin
    n/a
    n/a
    ORACLE
    n/a
    n/a
    WE8MSWIN1252
    PostgreSQL
    C

    *.CP1252 e/ou *.1252

    WIN1252
    Painel
    • Character set ou CharSet é um conjunto de símbolos e códigos.
    • Collation é o conjunto de informações e regras que descreve a comparação e ordenação dos caracteres de um de um character set.
    • Encoding é a forma que o o banco de dados armazena os campos caracteres (CHAR/VARCHAR).

    (informação) Alguns bancos de dados agregam ao collation as definições do character type, code set e o encoding


    Aviso
    titlePostgreSQL - Funções do banco de dados e caracteres acentuados

    Ao utilizar um banco de dados PostgreSQL instale e configure os parâmetros LC_COLLATE (collation), LC_CTYPE (character type) e ENCODING, conforme relacionado na tabela Banco de Dados, Collation, Character Type e Code Set/Encoding.

    Quando utilizado o encoding LATIN1 – diferente do encoding indicado na tabela Banco de Dados, Collation, Character Type e Code Set/Encoding, funções do banco de dados que manipulam caracteres – por exemplo lower()/upper(), não suportam/tratam caracteres acentuados. Exemplo:

    Sem Formato
    SQL> select upper('acentuação'), lower('ACENTUAÇÃO')
    +----------+----------+
    |column1   |column2   |
    +----------+----------+
    |ACENTUAçãO|acentuaÇÃo|
    +----------+----------+
    
    Nota
    titlePostgreSQL - Codepage e localização

    Em ambiente Linux, a utilização do PostgreSQL exige a instalação do codepage CP1252 para a localização pt_BR, para ser possível criar o Database com os parâmetros recomendados. 

    Latin1