<div dir="ltr">UTF8 characters encoding is supported by SQL schema for Mysql and Sqlite.<div><br></div><div>This want mean that each character can be encoded from 1 to 4 bytes.</div><div><br></div><div>So i think that your problem is not with the database support as well.</div><div><br></div><div>First point, the port to Qt4 to Qt5 as fixed a ASCII latin-1 encoding in Mysql to UTF8. This is done with 5.0.0 release. So the first check is to look in your tables properties if UTF8 is used properly.</div><div><br></div><div>Second point is the support of extra characters as <span style="font-size:16px">Emoji</span><span style="font-size:16px"> as been completed with Unicode 9.0 (june 2016) in norm and i'm not sure if older sql was compatible with it.</span></div><div><span style="font-size:16px"><br></span></div><div><span style="font-size:16px"><a href="https://en.wikipedia.org/wiki/Emoji#Unicode_blocks">https://en.wikipedia.org/wiki/Emoji#Unicode_blocks</a></span><br></div><div><span style="font-size:16px"><br></span></div><div><span style="font-size:16px"><a href="https://en.wikipedia.org/wiki/Unicode#Versions">https://en.wikipedia.org/wiki/Unicode#Versions</a></span><br></div><div><span style="font-size:16px"><br></span></div><div><span style="font-size:16px">In fact this depend of your emoji char value which must exist in specific Unicode version.</span></div><div><span style="font-size:16px"><br></span></div><div><span style="font-size:16px">To resume :</span></div><div><span style="font-size:16px"><br></span></div><div><span style="font-size:16px">1/ I agree that Emoji must be deprecated in file paths.</span></div><div><span style="font-size:16px">2/ The error reported by di</span><span style="font-size:16px">giKam must be improved. Please open a file in bugzilla about this topic, in database section.</span></div><div><span style="font-size:16px">3/ The digiKam handbook must annotated a section to explain the database restriction with char encoding (and certainly other of course).</span></div><div><span style="font-size:16px"><br></span></div><div><span style="font-size:16px">Gilles Caulier</span></div><div><span style="font-size:16px"><br></span></div><div><span style="font-size:16px"><br></span></div><div><span style="font-size:16px"><br></span></div></div><div class="gmail_extra"><br><div class="gmail_quote">2017-01-08 11:52 GMT+01:00 Brian J Hoskins <span dir="ltr"><<a href="mailto:brian@hoskins.eu" target="_blank">brian@hoskins.eu</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
Digikam experts,<br>
<br>
I have encountered an error in database migration (SQLite to MySQL)
which I would like to share.<br>
<br>
During the database migration, when the "Copy Images..." step is
progressing, I receive the following complaint from the migration
tool:<br>
<br>
<b>-----</b><br>
<b><i>Error while converting the database.</i></b><b><i><br>
</i></b><b><i>Details: Incorrect string value:
'\xF0\x9F\x92\xA6\xF0\x9F...' for column 'name' at row 1<br>
</i>-----<i><br>
</i></b><br>
The complaint suggested a 4-byte UTF character F09F92A6. I looked
that up and it's an Emoji (:sweat_drops:) character. See below: <br>
<br>
<a class="m_775979992499687995moz-txt-link-freetext" href="http://www.fileformat.info/info/unicode/char/1f4a6/index.htm" target="_blank">http://www.fileformat.info/<wbr>info/unicode/char/1f4a6/index.<wbr>htm</a><br>
<br>
This is what happens when you allow children to name files.<br>
<br>
I am wondering if this error occurs because the MySQL database is
limited to three byte UTF characters. If so, my suggestions are:<br>
<br>
* Modify the database schema to allow 4 byte UTF characters<br>
OR...<br>
* Create a more user-friendly error message for this event (most
users probably not able to decipher it).<br>
<br>
I would imagine this is a rare error among Digikam users. It's
possible I'm the only one who has encountered it. So low priority
for sure.<br>
<br>
Thanks,<br>
<br>
Brian.<br>
<br>
</div>
</blockquote></div><br></div>