Exporter (0) Imprimer
Développer tout

Caractéristiques internationales du pilote JDBC

Les caractéristiques d'internationalisation du pilote JDBC de Microsoft SQL Server 2005 incluent ce qui suit :

  • Prise en charge d'une version complètement localisée dans les mêmes langues que SQL Server.

  • Prise en charge des conversions de langage Java 1.4 pour les données SQL Server sensibles aux paramètres régionaux.

  • Prise en charge des langues internationales, indépendamment du système d'exploitation.

Gestion des données de type caractères

Les données de type caractères dans Java sont traitées par défaut en tant qu'Unicode ; l'objet String Java représente des données de type caractères Unicode. Dans le pilote JDBC, les méthodes getter et setter du flux de données ASCII constituent la seule exception à cette règle ; il s'agit de cas à part car ces méthodes utilisent des flux de données de type byte avec l'hypothèse implicite de pages de code simple et très répandu (ASCII).

En outre, le pilote JDBC fournit la propriété de chaîne de connexion sendStringParametersAsUnicode. Cette propriété peut être utilisée pour spécifier que les paramètres préparés pour les données de type caractères sont envoyés en tant qu'ASCII et non en tant qu'Unicode.

Pour plus d'informations sur la propriété de chaîne de connexion sendStringParametersAsUnicode, consultez Définition des propriétés de connexion.

Conversions entrantes du pilote

Les données de type texte Unicode provenant du serveur ne doivent pas être converties. Elles sont transmises directement en Unicode. Les données non-Unicode provenant du serveur sont converties en Unicode à partir de la page de code des données, au niveau base de données ou colonne. Le pilote JDBC utilise les routines de conversion de machine virtuelle Java (Java Virtual Machine, JVM) pour effectuer ces conversions. Ces conversions sont effectuées sur toutes les méthodes getter des flux de données de type chaînes et caractères.

Si la machine virtuelle JVM ne prend pas en charge la page de code appropriée pour les données de la base de données, le pilote JDBC génère une exception « Page de code XXX non prise en charge par l'environnement Java ».

Conversions sortantes du pilote

Les données de type caractères allant du pilote au serveur commencent en Unicode. Unicode est passé au serveur, où les conversions correctes sont effectuées si la colonne de destination n'est pas une colonne typée Unicode (nchar, nvarchar, ntext). Dans ce cas, le texte Unicode est transmis à partir des méthodes setter et updater du pilote JDBC pour les flux de données chaînes et caractères.

Problèmes de mise en forme

Pour les dates, les heures et les devises, toute la mise en forme avec les données localisées est effectuée au niveau du langage Java, à l'aide de l'objet Locale et des différentes méthodes de mise en forme pour les types de données Date, Calendar et Number. Dans le cas, rare, où le pilote JDBC doit transmettre des données sensibles aux paramètres régionaux dans un format localisé, le programme approprié de mise en forme est utilisé avec les paramètres régionaux JVM par défaut.

Paramètres non-Unicode

Résultat de l'amélioration des performances, les paramètres String peuvent être transmis à SQL Server sous une forme non-Unicode en définissant la propriété de la chaîne de connexion sendStringParametersAsUnicode. Le paramètre par défaut pour sendStringParametersAsUnicode est « true », ce qui signifie que les paramètres String sont envoyés en Unicode. Si la propriété sendStringParametersAsUnicode est définie avec la valeur « false », tous les paramètres String sur cette connexion sont envoyés au serveur avec le classement par défaut de la base de données.

Voir aussi

Afficher:
© 2015 Microsoft