タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

mysqlとUnicodeに関するmasakielastic2のブックマーク (6)

  • MySQL で utf8 と utf8mb4 の混在で起きること - tmtms のメモ

    MySQLUTF-8 で使おうと思ってハマりがちなのは charset utf8 を指定してしまうことです。 MySQLUTF-8 には歴史的事情により utf8 と utf8mb4 の二つあります。 UTF-8 は1バイト〜4バイトで1文字が構成される文字コードですが、MySQL の utf8 は4バイト文字を扱うことができません。ハマりたくなければ utf8mb4 を使いましょう。 utf8 を使ってしまった場合に4バイト文字がどのように扱われるか、自分でもうろ覚えだったのでメモしておきます。 登録 接続が utf8mb4 でカラムが utf8mb4 あたりまえですが、そのまま登録されます。 mysql> insert into utf8mb4 (c) values ('美味しい🍣と🍺'); mysql> select * from utf8mb4; +--------

    MySQL で utf8 と utf8mb4 の混在で起きること - tmtms のメモ
  • MySQL と寿司ビール問題 - かみぽわーる

    MySQL と Unicode Collation Algorithm (UCA) - かみぽわーる に関連するトピックで、 MySQL には寿司ビール問題というのがある。 寿司ビール問題どっかで詳しくお話を聞くべきだよなぁ。。。— RKajiyama (@RKajiyama) March 18, 2015 これはどういう問題かというと、 MySQL の Unicode では binary collation にしてコードポイントで比較しないと🍣と🍺に限らず絵文字が同値判定されるという問題です。 あれ? MySQL の utf8mb4 charset って、4バイト文字同士を比較すると同じ文字扱いされる? SELECT '🍣'='🍺' → 1 MySQL的には寿司とビールは同じ扱い。— とみたまさひろ (@tmtms) December 22, 2014 MySQLで select

    MySQL と寿司ビール問題 - かみぽわーる
  • utf8_unicode_ci に対する日本の開発者の見解 - かみぽわーる

    RailsMySQLのcollationをサーバー側のデフォルトのutf8_general_ciからutf8_unicode_ciにわざわざ変えてるのどうせ大した理由じゃないだろと思って掘ってみたらやっぱり大した理由じゃなかった… https://t.co/6NeetGhTF0— Ryuta Kamizono (@kamipo) April 18, 2014 Railsでcollationとしてutf8_unicode_ci(RailsのDEFAULT_COLLATION)が採用されるのはcharsetが未指定もしくはutf8(RailsのDEFAULT_CHARSET)のときだけで、utf8mb4にすることとかは全く考慮されてない。— Ryuta Kamizono (@kamipo) April 19, 2014 @frsyuki MySQLのcharset utf8のときのデフォルト

    utf8_unicode_ci に対する日本の開発者の見解 - かみぽわーる
    masakielastic2
    masakielastic2 2015/03/08
    Unicode 照合アルゴリズムは照合強度などの設定を言語ごとに調整する必要があるので、ICU の Collator かそれに相当するライブラリを併用する必要がある。
  • How to support full Unicode in MySQL databases · Mathias Bynens

    Alternative title: The things we do to store U+1F4A9 PILE OF POO (💩) correctly. Are you using MySQL’s utf8 charset in your databases? In this write-up I’ll explain why you should switch to utf8mb4 instead, and how to do it. UTF-8 The UTF-8 encoding can represent every symbol in the Unicode character set, which ranges from U+000000 to U+10FFFF. That’s 1,114,112 possible symbols. (Not all of these

  • mysql:13823

    From: "Yoshinori Matsunobu" <"Yoshinori Matsunobu" <ymatsunobu@xxxxxxxxxx>> Date: Mon, 26 Mar 2007 07:21:43 +0900 Subject: [mysql 13823] MySQLの現行UTF-8の問題とその対処方法について 松信です。 現時点で、MySQLの日語問題の中で関心が高い項目である、 UTF-8 4バイト文字の扱いについて、 問題の内容、現時点で取れる対処法、およびMySQL ABが 計画している対処案(現行utf8の改良)を以下に記述します。 計画中の対処案については、将来のバージョンで実装されることは確実ですが、 強い要望またはコミュニティからの貢献が無い限り早期の対応は難しいです。 強い要望のある方は、直接私までお知らせ下さいますようお願い致します。 以下、長文ですが

  • 常用漢字表のUnicode補助文字問題 - Cafe Babe

    京大の安岡先生が常用漢字表でUnicode補助文字(Unicode Supplementary Character)の領域に割り当てられている文字がレガシーなシステムでうまく扱えないことを問題にしている. どうして常用漢字表を改定するハメになったのか(yasuokaの日記) まあ,Shift-JISや日語EUCを使って実装しているシステムで扱えないのは当然だが,Unicodeを使っているシステムでも正しく扱えるとは限らない.というのは,Unicode補助文字というのは,U+10000〜U+10FFFFの領域に符号化されており,UTF-16ではサロゲートペアを使って表現され,UTF-8では4バイトに符号化されるからだ.文字がU+0000〜U+FFFFだけにあることを前提に実装された古いシステムでは,何が起こるかわからない.この辺は,我々がJava言語に対しておこなった話が参考になるとおもう

    常用漢字表のUnicode補助文字問題 - Cafe Babe
  • 1