ようこそ!浜村拓夫の世界へ

    ブログ内検索

    最近の記事

    ブックマーク数の多い記事

    Blog Translation

    Powered By FC2ブログ

    Powered By FC2ブログ
    ブログやるならFC2ブログ


    FC2ブログ LOGIN

    with Ajax Amazon

    utf8-binとutf8-general-ciの違い

    このエントリーを含むはてなブックマーク はてなブックマーク - utf8-binとutf8-general-ciの違い あとで読む
    CodeIgniterの認証ライブラリ「Tank Auth」を使ってみた。
    What Code Igniter authentication library is best? - Stack Overflow
    DX Authをリファインしたライブラリで、使い勝手が良いと評判?
    Tank Auth authentication library for CodeIgniter
    早速インストールして使ってみた。

    ●文字化けか!?…16進数だったorz
    phpMyAdminで、Tank Authが使うMySQLのテーブル情報を見てみると、文字列カラムの「照合順序」が「utf8-bin」になっていた。
    そのせいか、phpMyAdminでデータを見ると、文字データが16進数(0~9、a~fまでの16文字を使った数)として格納されていた。
    普段は、何も考えずに「utf8-general-ci」を使っているので少し戸惑った。
    文字コードが日本と異なる海外では、「utf8-bin」を使うの普通なのかな?

    ●utf8-binとutf8-general-ciの違い
    utf8-binの「bin」って、「バイナリー」の略だよね?(違う?)

    MySQLに文字化けで悩まされる - Railsなど技術系覚え書き

    utf8-bin と utf8-general-ciの違いを知った。
    前者が標準のUTF-8
    後者はアルファベットの大文字小文字を区別しないらしい。



    mysql.utf8_unicode_ci utf8_bin utf8_general_ci - ゆとり世代が書くblog。蟹ろぐ

    utf8_bin
    大文字小文字を区別する

    utf8_general_ci
    大文字小文字を区別しない。
    ちょっと早いらしい

    基本はutf8_general_ciを使う。utf8_binだとソートのときの並びが・・・



    utf8-binだと、日本語データ(マルチバイト文字)をソートしたときに、並び順が変になるのかな?

    UTF-8 - TongSangのプログラミングメモ

    utf-8に色々種類があって今まで意味もわからず
    utf-8 binを使っていたが、ちゃんとしなくてはと思い調べてみた。

    utf8_bin の場合、部分一致探索 LIKE などの使用時に英字の大文字小文字が区別されてしまう。
    大文字小文字を区別されないようにするためには、照会順序として utf8_general_ci を使用すればよい。



    そりゃ、小文字の「a」と大文字の「A」を、16進数で表記したら別物になるわな。
    utf8-binを使う利点は、多分これしかないだろう。

    ・検索のマッチング
    ・ソートの並び順

    日本語を扱うなら、今まで通り「utf8-general-ci」にしておけばいいのかな?

    ●MySQLのUTF対応
    以前調べて分かったこととして、UTFは最大で6バイトまで割り当てられる文字コードだったこと。

    PHPのstrlen関数で全角文字が3バイトになる件 - 浜村拓夫の世界

    文字コードとしてUTF-8を使っている場合、日本語の文字は1~6バイトのデータとして定義されている。



    「utf8-bin」について検索していて、新たなことを知った。
    MySQL5.1までは、3バイトまでのUTFに対応していたが4バイト以上のUTFには対応していなかった、とのこと。

    漢(オトコ)のコンピュータ道: Real UTF-8 On MySQL 6.0

    現在のバージョンのMySQLでは、UTF-8を完全にはサポートしていない。


    漢(オトコ)のコンピュータ道: MySQLコミュニティ騒然!MySQL 5.5.4が与えるインパクト

    4バイトUTF-8対応!
    MySQL 5.1以前のバージョンでは、BMP(基本多言語面)の文字しかサポートしていなかった。つまり、UTF-8は3バイトまでの文字しかサポートしていなかったのである。MySQL 5.5.3では、追加多言語面(UTF-16ではサロゲートペアを使う必要があるもの)もサポートされるようになった。人名漢字もバッチリである。

    4バイトUTF-8を利用するには、utf8mb4という文字コードを指定する必要がある。utf8文字コード自体は、これまでと同じく3バイトのままであるので注意が必要である。(このような仕様になったのは、互換性を損なうことがないようにするためである。ご理解頂きたい。)



    ここで一句、

    「文字化けは 忘れた頃に やって来る」

    文字コードの違いを全部吸収してくれるライブラリがあったらいいな~。(笑)

    エキスパートのためのMySQL[運用+管理]トラブルシューティングガイドエキスパートのためのMySQL[運用+管理]トラブルシューティングガイド
    (2010/06/12)
    奥野 幹也

    商品詳細を見る

    Android2.1プログラミングバイブル

    このエントリーを含むはてなブックマーク はてなブックマーク - Android2.1プログラミングバイブル あとで読む
    Androidの本を買った。
    さっそく、Androidアプリを作ってみよう。
    まずは、本にあるサンプルプログラムを作ってみるべ。

    Android2.1プログラミングバイブルAndroid2.1プログラミングバイブル
    (2010/05)
    布留川 英一

    商品詳細を見る

    【“Android2.1プログラミングバイブル”の続きを読む】

    非抜歯の歯列矯正

    このエントリーを含むはてなブックマーク はてなブックマーク - 非抜歯の歯列矯正 あとで読む
    歯並び治療の記録映像がありました。

    少女の歯列矯正1年半の様子を25秒で - Yahoo!映像トピックス

    Straight teeth in under 60 seconds!
    11歳の少女の歯並びを治す歯列矯正の様子を1年半にわたって撮影し続けた微速度撮影映像。
    歯列矯正の効果ってスゴイ!ということがよく分かります。





    長期間ビデオカメラで撮影した映像を編集し、短縮して再生すると変化の様子がよく分かります。

    (矯正前)
    歯列矯正(前)

    (矯正後)
    歯列矯正(後)

    側切歯(前から2番目の歯)が綺麗に並び変わってます。
    1年半後だと、髪型も随分と変わってますね。(笑)

    抜かない歯医者さんの矯正の話―2000の症例から語る抜かない歯医者さんの矯正の話―2000の症例から語る
    (2001/05)
    鈴木 設矢

    商品詳細を見る


    【“非抜歯の歯列矯正”の続きを読む】

    FirefoxでCPU使用率が100%になるのを解決する方法

    このエントリーを含むはてなブックマーク はてなブックマーク - FirefoxでCPU使用率が100%になるのを解決する方法 あとで読む
    FirefoxでWebプラウジングしていると、CPU使用率が100%になって動作が重たくなるときがある。
    解決方法があるか「Firefox CPU 100%」で検索してみた。

    FirefoxのCPU占有率の異常の解消 - たゆた - 楽天ブログ(Blog)

    1. アドレスバーに「about:config」と入力してEnterキーを押す
    2. 開いたページ上で右クリックして「新規作成」→「真偽値」をクリック
    3. 設定名を「config.trim_on_minimize」として「OK」をクリック
    4. 真偽値として「true」を選んで「OK」をクリック
    5. Firefoxを再起動する


    FirefoxやThunderbirdのメモリ消費量を劇的に減らす方法 - GIGAZINE より抜粋


    上記の指示通りに設定したら、FirefoxのCPU占有率が低くなった。
    起動時から高目で時間を経るに従い100%になっていた。
    設定後は処理時のみ100%近くになるだけになった。
    「メモリ消費量」とCPU占有率とは密接な関係があった。



    クラップス!! Firefox CPU占有率が100%近くになる現象を回避

    Firefox を使っていると、CPU占有率が100%近くになってほとんどフリーズしたような状態(とくに、動画を再生しているときに頻繁に起こるように思えます)になり、タスクマネージャで、Firefoxのプロセスを切らざるを得ないことが多々ありました。 

    実際には、メモリ使用量を減らす設定ですが、その設定を行うと、メモリだけでなく、CPU占有率も低くなり、フリーズのような現象を確かに回避することができました。



    FirefoxやThunderbirdのメモリ消費量を劇的に減らす方法 - GIGAZINE

    Firefoxはページのブラウジングを快適にするため、パソコンに搭載されているメモリを使いまくるという仕様になっています。ふつうの一般ピープルであればだからといってどうということもないのですが、Firefoxを好んで使う人のブラウジングスタイルだと異常なほどのメモリを消費し、もっさりしてきたり、快適さが損なわれてしまうように感じるのもまた事実。

    なんとかならないものかとみんなあれこれ試行錯誤しているわけですが、そういう対策で一番お手軽で快適さが損なわれない方法を1つ、ピックアップしておきます。

    ■最小化したときにメモリ消費量を減らす
    メモリ消費量を抑える一番簡単な方法です。やり方もとっても簡単。



    ・Firefoxはメモリを使いまくる仕様
    ・config.trim_on_minimize = true で、Firefox画面を最小化したときにメモリ消費量を減らす
    ということで、ある程度CPU使用率を抑えることができるようだ。

    実際に設定してみると、確かに改善が見られた。
    めでたし、めでたし。
    (・∀・)

    できるポケット+ Firefox Mozilla Firefox 3対応できるポケット+ Firefox Mozilla Firefox 3対応
    (2008/07/25)
    小林 祐一郎できるシリーズ編集部

    商品詳細を見る


    【“FirefoxでCPU使用率が100%になるのを解決する方法”の続きを読む】

    出発を引き延ばすな - フィリップ・ベニエの名言

    このエントリーを含むはてなブックマーク はてなブックマーク - 出発を引き延ばすな - フィリップ・ベニエの名言 あとで読む
    最近、やる気について考えていた。
    そんな中、名言に出会った。

    今年おせわになった言葉たち。 - 個人事業主のつぶやき

    偉大な力を身につけるまで出発を引き伸ばすな
    動かないことは、あなたをさらに弱めるからである

    明確に見えるようになるまで、はじめることを引き伸ばすな
    光に向かって歩まなければならないからである

    この第一歩をとる力はあるか
    必要性一目瞭然のこの小さな行いを実行する勇気はあるか

    その第一歩を取り、その行いを実行せよ
    その努力を果たすことで、あなたの力は尽きることなく
    倍増されることに驚くことだろう


    そして、次に実行すべき事は、明確に見えるようになるのである

    by フィリップベニエ



    のうだま―やる気の秘密のうだま―やる気の秘密
    (2008/12)
    上大岡 トメ池谷 裕二

    商品詳細を見る

    【“出発を引き延ばすな - フィリップ・ベニエの名言”の続きを読む】

    FC2Ad