sql >> Databasteknik >  >> RDS >> Mysql

Unicode (grekiska) tecken lagras i databasen som ??????

Jag tror att du bara behöver lägga till ett par parametrar till (useUnicode och characterEncoding ) när du skapar anslutningen. Följande kod fungerar för mig:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.PreparedStatement;

public class GreekTestMain {

    public static void main(String[] args) {
        String connUrl = 
                "jdbc:mysql://192.168.1.3/greektest?" +
                "useUnicode=yes&characterEncoding=UTF-8" +
                "&user=root&password=obfuscated";
        try (Connection conn = DriverManager.getConnection(connUrl)) {
            String sql = "INSERT INTO `chars` (`value`) VALUES (?)";
            PreparedStatement pst = conn.prepareStatement(sql);
            pst.setString(1, "ασδασδ");
            pst.executeUpdate();
        } catch (Exception e) {
            e.printStackTrace(System.err);
        }
    }

}



  1. Visualisera tipppunkten med Plan Explorer

  2. MySQL &Java - Få id för det senast infogade värdet (JDBC)

  3. Jag glömde lösenordet som jag angav under postgres-installationen

  4. SQL - välj rader som har samma värde i två kolumner