Hello Chris,
Many thanks for this and the detailed description!
I will have to consider if this is worth the effort. Could you by any chance 
let me know the parameter responsible for this in SOGo?

Best regards 

Andy

> Am 11.02.2017 um 21:02 schrieb Chris Coleman <users@sogo.nu>:
> 
> UTF-8 encoding fully supports emoticons; however, MySQL’s limited version of 
> utf8 does not support emoticons!
> MySQL’s utf8 can only store 3 byte characters, which are characters from the 
> Basic Multilingual Plane - characters from the majority of modern languages 
> and some symbols.  Emoticon characters exist in the Supplementary 
> Multilingual Plane for which we need 4 bytes and so must use utf8mb4.
> 
> To save emoticons to a MySQL database we need to change the character set and 
> collation properties, on the database connection, the database, the tables, 
> and the columns, to use utf8mb4.  Not necessarily all the columns, a minimal 
> solution has utf8mb4 on only the columns containing user-entered text.
> 
> Below find commands to change the character set and collation properties.  
> For pro users only.   Warning, backup your entire database before trying this 
> because the risk of data loss is real:
> SET NAMES utf8mb4;
> ALTER DATABASE database_name CHARACTER SET = utf8mb4 COLLATE = 
> utf8mb4_unicode_ci;
> 
> ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE 
> utf8mb4_unicode_ci;
> 
> ALTER TABLE table_name CHANGE column_name column_name VARCHAR(140) CHARACTER 
> SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL;
> 
> ** Bear in mind that changing from utf8 to utfmb4 affects the maximum lengths 
> of columns and index keys. The maximum lengths of columns will be unchanged 
> when modifying the tables with the commands discussed here; but in terms of 
> actual characters the amount that can be stored is reduced. This is a 
> consequence of changing from being able to store only 3 bytes up to 4! You 
> may need to update these lengths. **
> 
> REPAIR TABLE table_name;
> OPTIMIZE TABLE table_name;
> 
> $ mysqlcheck -u root -p --auto-repair --optimize --all-databases
> 
> Finally to change the character set of the connection, that setting must be 
> changed inside the SOGo application.
> 
> Hope this helps.
> 
> 
>> On 2/10/2017 9:21 AM, "Andreas Blaha" (andr...@blaha.at) wrote:
>> Hi all,
>> strange request from a user:
>> when an appointment created on the iphone/ipad contains an emoticon 
>> (wherever: title, notes, location etc.) the appointment is visible and 
>> manageable on the iphone/ipad, but not in the web gui. It can be seen but 
>> does not give any details, cannot be edited or deleted from there, I cannot 
>> view the source text of the appointment, but I get the according reminders. 
>> The appointment is not visible at all in Outlook 201x/ActiveSync. This 
>> behaviour I can reproduce, both in 2.3.19 and 3.2.6a.
>> I only found an open bug referring to UTF8, not sure if this has anything to 
>> do with it.
>> I have no Android device at hand to check whether it is the same there or 
>> not.
>>  
>> Has anyone experienced this as well?
>>  
>> Best regards
>> Andy
>> -- 
>> users@sogo.nu
>> https://inverse.ca/sogo/lists
> -- 
> users@sogo.nu
> https://inverse.ca/sogo/lists
-- 
users@sogo.nu
https://inverse.ca/sogo/lists

Reply via email to