我使用现有数据库从Request Tracker 3.8迁移到4.2,现在我无法创建包含变音符号和主题中的那些字符的新票证:
无法创建故障单:内部错误:无法执行查询' INSERT INTO Tickets(已解决,已创建,状态,LastUpdatedBy,主题,类型,InitialPriority,FinalPriority,SLA,Starts ,Queue,Due,Creator,Started,Priority,LastUpdated)VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)&#39 ;字符串值不正确:' \ xE4 \ xE4'对于专栏'主题'在第1行
db已经拥有特殊字符,当我检查字符名称集时,一切似乎都应该是(?):
{{1}}
那么,RT4究竟试图插入db?
答案 0 :(得分:0)
显然,放入第5 ?
的字节是用latin1编码的,但你说它们是utf8。由于E4E4不是任何有效的utf8编码,因此发生了错误。
请参阅Trouble with utf8 characters; what I see is not what I stored中的“最佳做法” 我无法从有限的信息中看出有多少步骤没有被遵循。
答案 1 :(得分:0)
对于旧版RT和旧版MySQL的升级,有一些额外的步骤可以处理数据库处理编码方式的变化。 this upgrading document详细介绍了这些步骤。如果您可以使用这些步骤重做升级,则可能会解决您的问题。