MySQLとSQLiteの日付型書式の比較
MySQLのDATE_FORMATをSQLiteで使うために変換する方法を調査した時のメモ
使い方
日本語ドメインをPunycode(英数字表記)に、またPunycode(英数字表記)を日本語ドメインに変換するツールです。
(1)日本語ドメイン又はPunycodeを入力します。
(2)変換ボタンのクリックで日本語表記←→Punycodeに変換をします。
Punycodeとは
Punycode(ピュニコード)とは、国際化ドメイン名で利用される文字列変換用のアルゴリズムで、既存のDNSサーバーでも扱えるように英数字表記に変換したものです。
エンコーディング手順
(1)前処理
・英字を全て半角小文字に変換
・全角数字を半角数字に変換
・半角カタカナは全角カタカナに変換
・句点又は全角ピリオドは半角ピリオドに変換
・全角ハイフンは半角ハイフンに変換
(2)分解
・ドット(.)で区切られたドメイン名の階層レベルごとに分解
・ASCII文字と非ASCII文字に分解
(3)変換
・非ASCII文字を文字コード順に並び替え、文字コードの差分と文字位置から36種類(英字「a~z」、数字「0~9」)の文字に変換
・参考:http://www.jdna.jp/survey/rfc/rfc3492j.html
(4)結合
・分解したASCII文字と変換後の非ASCII文字をハイフンで結合し先頭に「xn--」を付ける
・階層レベルごとに分解したものを結合する
例) 日本語example.jp → xn--example-bs3o55gu19k.jp
例) xn--example-bs3o55gu19k.jp → 日本語example.jp
最近の投稿
MySQLのDATE_FORMATをSQLiteで使うために変換する方法を調査した時のメモ
MySQLとSQLiteのどちらでも対応できるように分岐・変換処理等を組み込んでみました
MySQLのphpMyAdminに似たブラウザでデータベースを管理できるSQLite用のphpLiteAdminをインストールした時のメモ
さくらVPSサーバーからレンタルサーバー(ライトプラン)へ引っ越す必要があったのでMySQL(innodb)からSQLiteにデータを移行した時のメモ
MySQLのダンプデータでエスケープ文字の対応をしていたらmb_substrが遅いことが判明、その時に対応した内容をメモ