Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Os recursos de internacionalização do Microsoft JDBC Driver para SQL Server incluem os seguintes itens:
- Suporte para uma experiência totalmente localizada nos mesmos idiomas do SQL Server
- Suporte para as conversões de linguagem Java para dados SQL Server sensíveis à localidade
- Suporte para idiomas internacionais, independentemente do sistema operacional
- Suporte para nomes de domínio internacionais (começando com o Microsoft JDBC Driver 6.0 para SQL Server)
Processamento de dados de caracteres
Os dados de caracteres em Java são tratados como Unicode por padrão; o objeto Java String representa dados de caracteres Unicode. No driver JDBC, a única exceção a essa regra são os métodos getter e setter do stream ASCII, que constituem casos especiais porque usam fluxos de bytes baseados na suposição implícita de páginas de código únicas e conhecidas (ASCII).
Além disso, o driver JDBC fornece a propriedade de cadeia de conexão sendStringParametersAsUnicode . Essa propriedade pode ser usada para especificar que os parâmetros preparados para dados de caracteres sejam enviados como ASCII ou MBCS (Multi-byte Character set) em vez de Unicode. Para obter mais informações sobre a propriedade da cadeia de conexão sendStringParametersAsUnicode , consulte Definindo as propriedades da conexão.
Conversões de entrada do controlador
Os dados de texto Unicode provenientes do servidor não precisam ser convertidos. Ele é passado diretamente como Unicode. Os dados não-Unicode provenientes do servidor são convertidos da página de código associada aos dados, no nível do base de dados ou da coluna, para Unicode. O driver JDBC usa as rotinas de conversão Java Virtual Machine (JVM) para fazer essas conversões. Essas conversões são feitas em todos os métodos de obtenção de fluxo de String e Character digitados.
Se a JVM não tiver o suporte de página de código adequado para os dados do banco de dados, o driver JDBC lançará uma exceção "Página de código XXX não suportada pelo ambiente Java". Para resolver esse problema, você deve instalar o suporte completo a caracteres internacionais necessários para essa JVM.
Conversões de saída do controlador
Os dados de caracteres que vão do driver para o servidor podem ser ASCII ou Unicode. Por exemplo, os novos métodos de caracteres nacionais JDBC 4.0, como setNString, setNCharacterStream e métodos setNClob das classes SQLServerPreparedStatement e SQLServerCallableStatement , sempre enviam seus valores de parâmetro para o servidor em Unicode.
Por outro lado, os métodos de API de caracteres não nacionais, como setString, setCharacterStream e métodos setClob das classes SQLServerPreparedStatement e SQLServerCallableStatement enviam seus valores para o servidor em Unicode somente quando a propriedade sendStringParametersAsUnicode é definida como "true", que é o valor padrão.
Parâmetros não-Unicode
Para um desempenho ideal com parâmetros não-Unicode do tipo CHAR,VARCHAR ou LONGVARCHAR , defina a propriedade da cadeia de conexão sendStringParametersAsUnicode como "false" e use os métodos de caracteres não nacionais.
Problemas de formatação
Para data, hora e moedas, toda a formatação com dados localizados é feita no nível da linguagem Java usando o objeto Locale; e os vários métodos de formatação para os tipos de dados Data, Calendário e Número . No caso raro em que o driver JDBC deve passar dados sensíveis à localidade em um formato local, o formatador adequado é usado com a configuração de localidade padrão da JVM.
Suporte de agrupamento
O JDBC Driver 3.0 oferece suporte a todos os agrupamentos suportados pelo SQL Server 2000 (8.x), SQL Server 2005 (9.x) e os novos agrupamentos ou novas versões de nomes de agrupamento do Windows introduzidos no SQL Server 2008 (10.0.x).
Para obter mais informações sobre os agrupamentos, consulte Suporte a agrupamento e Unicode e Nome de agrupamento do Windows (Transact-SQL).
Usando nomes de domínio internacionais (IDN)
O JDBC Driver 6.0 para SQL Server suporta o uso de IDNs (Nomes de Domínio Internacionalizados) e pode converter um serverName Unicode em codificação compatível com ASCII (Punycode) quando necessário durante uma conexão. Se os IDNs estiverem armazenados no DNS (Sistema de Nomes de Domínio) como cadeias de caracteres ASCII no formato Punycode (especificado pela RFC 3490), habilite a conversão do nome do servidor Unicode definindo a propriedade serverNameAsACE como true. Caso contrário, se o serviço DNS estiver configurado para permitir o uso de caracteres Unicode, defina a propriedade serverNameAsACE como false (o padrão). Para versões mais antigas do driver JDBC, também é possível converter o serverName em Punycode usando os métodos IDN.toASCII do Java antes de definir essa propriedade para uma conexão.
Observação
A maioria dos softwares de resolução escritos para plataformas não-Windows é baseada nos padrões DSN da Internet e, portanto, é mais provável que use o formato Punycode para IDNs, enquanto um servidor DNS baseado no Windows em uma rede privada pode ser configurado para permitir o uso de caracteres UTF-8 por servidor. Para obter mais informações, consulte Suporte a caracteres Unicode.