Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Java String - Buscando caracteres de outros idiomas do mysql - Os dados estão completos?


Java é capaz de armazenar TODOS os textos Unicode válidos. Ele usa UTF-16 internamente.

Se você configurar todo o caminho de dados corretamente, todo o texto será preservado. Você precisa garantir:
  • A string correta chega ao Java (no caso de aplicativos da web, codificação de caracteres do formulário que está sendo enviado).
  • Java sabe que deve estar se comunicando com o banco de dados em UTF-8 e o banco de dados sabe que deve estar esperando UTF-8 por meio da conexão. Você garante isso ao configurar a conexão com o banco de dados.
  • Os dados são armazenados como UTF-8 no banco de dados.

Observe que [a documentação do MySQL] reivindica O UTF-8 é incapaz de armazenar caracteres fora do Plano Multilíngue Básico (todos os caracteres "normais" estão dentro do BMP). O próprio UTF-8 é perfeitamente capaz de armazenar todos os caracteres unicode e o banco de dados também deve ser capaz de codificar esses caracteres.

Java em si é bom - apenas lembre-se de que alguns caracteres unicode raros são na verdade dois caracteres (chamados de par substituto ) em Java.