J'essaye de faire un simple insert en base mais le driver jdbc semble me
virer mes caractères hors iso-8859-1.
Pourtant avec Properties je lui demande d'utiliser le 8859-15 qui accepte le
caractère l'euro et l'o.
Quand je fais la requête depuis MySQL Control center ca marche, via JDBC ca
marche pas...
J'utilise mysql connector 3.0.11 comme driver.
update foo set data = "une ouvre de 10 000 ? \u20AC";
Dans le champ j'ai alors "une ?uvre de 10 000 ? ? "
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
jerome moliere
Canard Furieux wrote:
Salut,
J'essaye de faire un simple insert en base mais le driver jdbc semble me virer mes caractères hors iso-8859-1.
Pourtant avec Properties je lui demande d'utiliser le 8859-15 qui accepte le caractère l'euro et l'o. Quand je fais la requête depuis MySQL Control center ca marche, via JDBC ca marche pas...
J'utilise mysql connector 3.0.11 comme driver.
update foo set data = "une ouvre de 10 000 ? u20AC"; Dans le champ j'ai alors "une ?uvre de 10 000 ? ? "
Quelqu'un a une idée ?
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.Statement; public class foo { private Connection cMySQL = null; private Statement stmt = null; public void connexionMySQL() { try { String dbURI = "jdbc:mysql://127.0.0.1/test"; Class.forName("com.mysql.jdbc.Driver").newInstance(); java.util.Properties prop = new java.util.Properties(); prop.put("charSet", "iso-8859-15");
es tu sur de ce charSet ? d'apres la doc en ligne sur le site mysql je crains que ce tag ait été remplacé par qqch du genre:
characterEncoding If 'useUnicode' is set to true, what character encoding should the driver use when dealing with strings? (defaults is to 'autodetect') false
Jerome -- Auteur cahier du programmeur Java tome 2 - Eyrolles 10/2003 http://www.eyrolles.com/php.informatique/Ouvrages/ouvrage.php3?ouv_ean1382212111941
Canard Furieux wrote:
Salut,
J'essaye de faire un simple insert en base mais le driver jdbc semble me
virer mes caractères hors iso-8859-1.
Pourtant avec Properties je lui demande d'utiliser le 8859-15 qui accepte le
caractère l'euro et l'o.
Quand je fais la requête depuis MySQL Control center ca marche, via JDBC ca
marche pas...
J'utilise mysql connector 3.0.11 comme driver.
update foo set data = "une ouvre de 10 000 ? u20AC";
Dans le champ j'ai alors "une ?uvre de 10 000 ? ? "
Quelqu'un a une idée ?
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.Statement;
public class foo {
private Connection cMySQL = null;
private Statement stmt = null;
public void connexionMySQL() {
try {
String dbURI = "jdbc:mysql://127.0.0.1/test";
Class.forName("com.mysql.jdbc.Driver").newInstance();
java.util.Properties prop = new java.util.Properties();
prop.put("charSet", "iso-8859-15");
es tu sur de ce charSet ?
d'apres la doc en ligne sur le site mysql je crains que ce tag ait été
remplacé par qqch du genre:
characterEncoding If 'useUnicode' is set to true, what character
encoding should the driver use when dealing with strings? (defaults is
to 'autodetect') false
Jerome
--
Auteur cahier du programmeur Java tome 2 - Eyrolles 10/2003
http://www.eyrolles.com/php.informatique/Ouvrages/ouvrage.php3?ouv_ean1382212111941
J'essaye de faire un simple insert en base mais le driver jdbc semble me virer mes caractères hors iso-8859-1.
Pourtant avec Properties je lui demande d'utiliser le 8859-15 qui accepte le caractère l'euro et l'o. Quand je fais la requête depuis MySQL Control center ca marche, via JDBC ca marche pas...
J'utilise mysql connector 3.0.11 comme driver.
update foo set data = "une ouvre de 10 000 ? u20AC"; Dans le champ j'ai alors "une ?uvre de 10 000 ? ? "
Quelqu'un a une idée ?
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.Statement; public class foo { private Connection cMySQL = null; private Statement stmt = null; public void connexionMySQL() { try { String dbURI = "jdbc:mysql://127.0.0.1/test"; Class.forName("com.mysql.jdbc.Driver").newInstance(); java.util.Properties prop = new java.util.Properties(); prop.put("charSet", "iso-8859-15");
es tu sur de ce charSet ? d'apres la doc en ligne sur le site mysql je crains que ce tag ait été remplacé par qqch du genre:
characterEncoding If 'useUnicode' is set to true, what character encoding should the driver use when dealing with strings? (defaults is to 'autodetect') false
Jerome -- Auteur cahier du programmeur Java tome 2 - Eyrolles 10/2003 http://www.eyrolles.com/php.informatique/Ouvrages/ouvrage.php3?ouv_ean1382212111941
es tu sur de ce charSet ? d'apres la doc en ligne sur le site mysql je crains que ce tag ait été remplacé par qqch du genre:
characterEncoding If 'useUnicode' is set to true, what character encoding should the driver use when dealing with strings? (defaults is to 'autodetect') false
Si la propriété passée au driver JDBC n'est pas exploitée correctement, tu peux définir l'encodage par défaut de la JVM (toutes les entrées/sorties) juste pour ton essai avec -Dfile.encoding=iso-8859-15
Mais c'est assez contraignant et pas du tout propre. Il serait mieux de faire marcher correctement le driver.
es tu sur de ce charSet ?
d'apres la doc en ligne sur le site mysql je crains que ce tag ait été
remplacé par qqch du genre:
characterEncoding If 'useUnicode' is set to true, what character
encoding should the driver use when dealing with strings? (defaults is
to 'autodetect') false
Si la propriété passée au driver JDBC n'est pas exploitée
correctement, tu peux définir l'encodage par défaut de la JVM (toutes
les entrées/sorties) juste pour ton essai avec
-Dfile.encoding=iso-8859-15
Mais c'est assez contraignant et pas du tout propre. Il serait mieux
de faire marcher correctement le driver.
es tu sur de ce charSet ? d'apres la doc en ligne sur le site mysql je crains que ce tag ait été remplacé par qqch du genre:
characterEncoding If 'useUnicode' is set to true, what character encoding should the driver use when dealing with strings? (defaults is to 'autodetect') false
Si la propriété passée au driver JDBC n'est pas exploitée correctement, tu peux définir l'encodage par défaut de la JVM (toutes les entrées/sorties) juste pour ton essai avec -Dfile.encoding=iso-8859-15
Mais c'est assez contraignant et pas du tout propre. Il serait mieux de faire marcher correctement le driver.
-- Yves Martin
Canard Furieux
"Yves Martin" a écrit...
es tu sur de ce charSet ? d'apres la doc en ligne sur le site mysql je crains que ce tag ait été remplacé par qqch du genre:
Non en fait en lisant le readme du driver jconnector ils disent qu'il faut utiliser characterEncoding et useUnicode en effet.
Par contre pas moyen d'utiliser l'iso-8859-15 ( qui ne semble pas souvent implémenté ), par contre le cp1252 marche et me permet d'avoir mes caractères.
es tu sur de ce charSet ?
d'apres la doc en ligne sur le site mysql je crains que ce tag ait été
remplacé par qqch du genre:
Non en fait en lisant le readme du driver jconnector ils disent qu'il faut
utiliser characterEncoding et useUnicode en effet.
Par contre pas moyen d'utiliser l'iso-8859-15 ( qui ne semble pas souvent
implémenté ), par contre le cp1252 marche et me permet d'avoir mes
caractères.
es tu sur de ce charSet ? d'apres la doc en ligne sur le site mysql je crains que ce tag ait été remplacé par qqch du genre:
Non en fait en lisant le readme du driver jconnector ils disent qu'il faut utiliser characterEncoding et useUnicode en effet.
Par contre pas moyen d'utiliser l'iso-8859-15 ( qui ne semble pas souvent implémenté ), par contre le cp1252 marche et me permet d'avoir mes caractères.