Java PreparedStatement setString änderungen Charaktere

Wie im Titel: um sicher zu sein, war ich Debuggen der Anwendung ist, und so in der Linie, wo ich strings in PreparedStatement-variable, Sonderzeichen wechseln zu "?". Ich eigentlich don ' T wissen, wo zu suchen für Dinge, sollte es zu reparieren, so dass ich nicht weiß, ob der code notwendig ist.. Naja, ich Stell mal hier:

PreparedStatement stm = null;
String sql = "";

    try{
      sql = "INSERT INTO methods (name, description) VALUES (?, ?)";
      stm = connection.prepareStatement(sql);
      stm.setString(1, method.getName());
      stm.setString(2, method.getDescription());
      //...
    }catch(Exception e){}

beim Debuggen Feld "name" korrekt-Methode-Objekt, aber nach dem hinzufügen in stm variabel, es verändert es die Zeichen '?'.

Ich habe festgestellt, ein Thema, über das ähnlich sitoatuin SO, aber es gab nicht jede Antwort, die mir helfen könnten, da ich genau weiß, dass es etwas nicht stimmt in addition string-Anweisung nicht in der Datenbank. Aber ich weiß nicht was..

Alle Anregungen?

PS. Ich bin mit netbeans 6.7.1 version

EDIT: da war ich Debuggen mit standard-netbeans-debugger, und war die überprüfung Zustand der Variablen vor dem hinzufügen von Zeichenfolgen zu 'stm' variable. Ich war auch der Wechsel getName () - Methode static string mit Sonderzeichen. So sicher ist alles ok mit der Methode class.

EDIT2: ich habe noch eine test. Geprüft stm-variable und eine seiner Eigenschaften ist "charEncoding", was ist "cp1252". Also die wichtigste Frage ist.. wie das zu ändern?

  • Wie haben Sie das überprüft? Welches tool hast du benutzt, um zu überprüfen, ob die Daten in der Datenbank?
  • Sagen Sie, dass der Rückgabewert von method.getName() geändert, nachdem es aufgerufen wurde?
  • Nie tun catch(Exception e){} - wenn eine Ausnahme passiert, werden Sie nicht wissen, dass es gemacht wird und was falsch gelaufen ist. Zumindest drucken Sie die stack-trace: catch (Exception e) { e.printStackTrace(); }
  • Habe das gleiche Problem aber noch nicht fest.. ich bin mit Mysql Workbench 5.2 und Java 7. Bitte helfen Sie mir dieses Problem zu beheben
InformationsquelleAutor Seraphis | 2011-01-18
Schreibe einen Kommentar