Я пытаюсь сохранить следующий твит в базу данных MySQL, и он не работает со следующим исключением. Как это исправить? Любая помощь приветствуется. Я использую базу данных charset utf8, и я думаю, что !???
в сообщении здесь проблематично.Невозможно сохранить сообщения, содержащие специальные символы
твит = Мне запрещено ездить @ USS из-за моего роста, я полагаю, что сидеть в середине, если есть авария, но я все равно люблю свой рост! ???
Caused by: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x91\x8D\xF0\x9F...' for column 'message' at row 1
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3609)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3541)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2002)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2163)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2624)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2127)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2427)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2345)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2330)
at org.hibernate.id.IdentityGenerator$GetGeneratedKeysDelegate.executeAndExtract(IdentityGenerator.java:94)
at org.hibernate.id.insert.AbstractReturningDelegate.performInsert(AbstractReturningDelegate.java:57)
чую две возможные проблемы. 1. ** ** и 2. ** @ **. Попробуйте удалить и из строки, и попытаться сохранить. – ManuPK
«Кажется более проблематичным для меня. Как выглядит ваш синтаксис для обновления? Я уверен, что вы используете встроенный SQL, который открывает дверь для SQL-инъекции. Вы должны действительно использовать параметры. Это устранит вашу проблему и улучшит безопасность кода. – xQbert