I have now been trying for some time to display unicode emojis in my tables, but couldn't make it work fully.
My database has one table with different status types, they have an identifier, a label, a hex color code and I also wanted to add an emoji (one of the colored circles) as a representation for the status when there is not enough space in the app to display the full label. I wanted to go with storing this in the databse as this would allow me to change the emoji in one place, the database, if needed and it would change in all places I have used it in my apps. I made good experiences with this practice from storing the background color hex code in the database that is then dynamically used in Retool when needed. If I would hardcode the emojis into Retool it works, but also means that I have to build long tentative JS code and need to adapt it in all places when I want to change the emoji for a specific status tyape or when status types are added.
So, my table in the database and the emoji column are formatted in 'utf8mb4_0900_ai_ci'. I can see the emojis perfectly well in phpmyadmin:
Interestingly enough Retool is able to display one of the emojis, that is the black circle ' U+26AB. All the others are not displayed and I do not know how to fix this. The collation should be correct and I also tried to store the Unicode in the database instead of the emoji, but then the table will display the unicode as text.
I have not even tried to display them in other components as they are already shown as '?' in the query results in Retool:
Any ideas how to make this work? It seems to be connected to the database connection, but I can't wrap my head around it. Maybe @ben you have an idea, as you answered in this thread.
If that's the case, it is on our radar to allow you to connect to your database using different charsets which should resolve this issue, but it isn't possible at the moment I can report here when that functionality is included though.
Hi there, just updating here that this feature is now available behind a feature flag as it is still in early testing. Feel free to write into support if you'd like this early feature enabled for your org!