Customize Consent Preferences

We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.

The cookies that are categorized as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site. ... 

Always Active

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

No cookies to display.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

No cookies to display.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

No cookies to display.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

No cookies to display.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

No cookies to display.

MySQLのテーブルの照合順序をUTF-8にする

コンテンツを作成するときに、英語、日本語以外の文字コードが保存されず、’?’ になってしまうことに気がついた。たとえば、ṃ なんていう文字がそうだ。MySQLの文字コードはUTF-8のはずなのにおかしいな、と思って調べてみた。

結論からいうと、node_revisions というテーブルのbodyフィールドの照合順序を utf8_general_ci にすることによって正しく保存されるようになった。body フィールドの照合順序が ujis_japanese_ci になっていたのがまずかった。

照合順序の変更は、MySQLの管理ツール phpmyadmin2 を使って行った。node_revisions テーブルを選択し、構造タブから bodyフィールドの編集へと進み、照合順序を変更して保存すればよい。bodyだけでなく titleフィールド, teaserフィールドも変更しておくとよい。

文字コードセットと照合順序についての詳細は、以下のページに書かれている。

http://dev.mysql.com/doc/refman/5.1/ja/charset.html

照合順序を設定するとそれに応じて、文字コードが設定されるらしい。

照合順序と文字コードの設定は、サーバ、データベース、テーブル、カラムとそれぞれのレベルで設定できる。今回は、MySQL4.0から移行したときに、既存のテーブル、カラムの照合順序が ujis_japanses_ci のままになっていたようだ。

PAGE TOP