スキーマ構造
戻るこのページは本サービスのSQLiteデータベース構造を図と表でまとめたものです。検索窓で直接SQLクエリーを書く際など、参考にしてください。
情報源
本サービスは以下の情報源を参考にしています:
- IPAmj明朝フォント
- MJ文字情報一覧表 Ver.006.02
- 文字情報基盤変体仮名データ(MJ変体仮名)
- 史料編纂所データベース異体字同定一覧
- Wikipedia: CJK互換漢字
- CHISE / 漢字構造情報データベース
- 行政事務標準文字追加明朝フォント
- 行政事務標準文字一覧(変体仮名を含む全文字)
- 行政事務標準文字 漢字属性情報一覧、部首一覧
- 文字情報基盤文字 JIS X 0213代替変換情報
- 行政事務標準文字 JIS X 0213代替変換情報
文字コード範囲
- 漢字: U+4E00-U+9FFF(CJK統合漢字)、U+3400-U+4DBF(拡張A)など
- CJK互換漢字: U+F900-U+FAFF
- 変体仮名: U+1B000-U+1B0FF(文字情報基盤 変体仮名)
- 行政事務標準文字: U+100000-U+10FFFF(私用領域)など
全テーブル・カラム定義表
| テーブル | カラム | 型 | 説明 |
|---|---|---|---|
| dictionary | id | INTEGER | 主キー |
| glyph | TEXT | 図形(表示用) | |
| font | TEXT | フォント情報 | |
| mj_code | TEXT | MJ文字図形名 | |
| unicode | TEXT | 対応するUCS | |
| ucs_implemented | TEXT | 実装したUCS | |
| mjivs | TEXT | 実装したMoji_JohoコレクションIVS | |
| svs_implemented | TEXT | 実装したSVS | |
| koseki_code | TEXT | 戸籍統一文字番号 | |
| juki_code | TEXT | 住基ネット統一文字コード | |
| nyukan_seiji_code | TEXT | 入管正字コード | |
| nyukan_gaiji_code | TEXT | 入管外字コード | |
| kanji_policy | TEXT | 漢字施策 | |
| compatible_kanji | TEXT | 対応する互換漢字 | |
| x0213 | TEXT | JIS X 0213 | |
| x0213_hosetsu_renban | TEXT | X0213 包摂連番 | |
| x0213_hosetsu_kubun | TEXT | X0213 包摂区分 | |
| x0212 | TEXT | X0212 | |
| mj_version | TEXT | MJ文字図形バージョン | |
| touki_code | TEXT | 登記統一文字 | |
| total_strokes | INTEGER | 総画数(参考) | |
| reading | TEXT | 読み(参考) | |
| daikanwa | TEXT | 大漢和 | |
| nihon_kangi_jiten | TEXT | 日本語漢字辞典 | |
| shin_daijiten | TEXT | 新大字典 | |
| daijigen | TEXT | 大字源 | |
| daikangorin | TEXT | 大漢語林 | |
| update_history | TEXT | 更新履歴 | |
| remarks | TEXT | 備考 | |
| radicals | id | INTEGER | 主キー |
| number | INTEGER | 部首番号 | |
| glyph | TEXT | 部首字形 | |
| radical_readings | id | INTEGER | 主キー |
| radical_id | INTEGER | 部首ID (radicals.id) | |
| reading_id | INTEGER | 読みID (readings.id) | |
| radical_variants | id | INTEGER | 主キー |
| radical_id | INTEGER | 部首ID (radicals.id) | |
| glyph | TEXT | 部首異体字形 | |
| readings | id | INTEGER | 主キー |
| reading | TEXT | 読み | |
| kanji_radical | id | INTEGER | 主キー |
| kanji_id | INTEGER | 漢字ID (dictionary.id) | |
| radical_id | INTEGER | 部首ID (radicals.id) | |
| radical_order | INTEGER | 部首の順序 | |
| kanji_reading | id | INTEGER | 主キー |
| kanji_id | INTEGER | 漢字ID (dictionary.id) | |
| reading_id | INTEGER | 読みID (readings.id) | |
| jisx0213_substitution | id | INTEGER | 主キー |
| source_code | TEXT | 変換元コード | |
| target_code | TEXT | 変換先コード | |
| substitution_type | INTEGER | 変換種別 | |
| hentaigana | id | INTEGER | 主キー |
| kanji_id | INTEGER | 変体仮名ID (dictionary.id) | |
| jibo_glyph | TEXT | 字母の文字 | |
| jibo_unicode | TEXT | 字母のUCS符号位置 (例: U+5B89) | |
| academic_id | TEXT | 学術用変体仮名番号 | |
| kokugo_url | TEXT | 国語研URL | |
| hentaigana_onka | id | INTEGER | 主キー |
| hentaigana_id | INTEGER | 変体仮名ID (hentaigana.id) | |
| onka | TEXT | 音価 | |
| v2n_substitution | id | INTEGER | 主キー |
| variant_code | TEXT | 異体字/CJK互換漢字コード (例: U+4E00, U+FA10) | |
| normal_code | TEXT | 標準漢字コード (例: U+4E01, U+585A) | |
| ids | id | INTEGER | 主キー |
| kanji_id | INTEGER | 漢字ID (dictionary.id) | |
| sequence | TEXT | 字形記述列 (IDS) |
SQLクエリ例
- 行政事務標準文字で追加された全ての文字を表示
SELECT * FROM dictionary WHERE mj_code like 'GJ0%'; - 部首番号162「辶」で漢字を検索
SELECT k.glyph, k.mj_code FROM dictionary k JOIN kanji_radical kr ON k.id = kr.kanji_id JOIN radicals r ON kr.radical_id = r.id WHERE r.number = 162; - 「辺」の関連文字を抽出
SELECT target_code AS related_code FROM jisx0213_substitution WHERE source_code LIKE 'U+8FBA%' UNION SELECT source_code AS related_code FROM jisx0213_substitution WHERE target_code LIKE 'U+8FBA%' UNION SELECT normal_code AS related_code FROM v2n_substitution WHERE variant_code LIKE 'U+8FBA%' UNION SELECT variant_code AS related_code FROM v2n_substitution WHERE normal_code LIKE 'U+8FBA%'; - 「あ」の変体仮名を検索
SELECT k.* FROM dictionary k JOIN jisx0213_substitution j ON k.unicode = j.source_code WHERE j.target_code = 'U+3042' AND k.unicode LIKE 'U+1B%'; - 字母が「安」の変体仮名を検索
SELECT k.* FROM dictionary k JOIN hentaigana h ON k.id = h.kanji_id WHERE h.jibo_glyph = '安' OR h.jibo_unicode = 'U+5B89'; - 各種コード検索
-- Unicode/GJ文字(U+xxxx, G+xxxx) SELECT * FROM dictionary WHERE unicode = 'U+8FBA'; -- 住基ネット統一文字(J+xxxx) SELECT * FROM dictionary WHERE juki_code = 'J+307E'; -- 戸籍統一文字(xx-xx-xx) SELECT * FROM dictionary WHERE koseki_code = '01-01-01'; -- JIS X 0213コード検索 SELECT * FROM dictionary WHERE x0213 = '1-42-53'; -- 登記統一文字検索 SELECT * FROM dictionary WHERE touki_code = '00437640'; -- 入管正字/外字コード SELECT * FROM dictionary WHERE nyukan_seiji_code = 'A123456'; SELECT * FROM dictionary WHERE nyukan_gaiji_code = 'AX12345678'; -- IVS検索 SELECT * FROM dictionary WHERE mjivs LIKE '%U+8FBA%U+E0100%';
このページは開発者向けの参考資料です。抜け漏れや誤りがあればご指摘ください。