
No.1ベストアンサー
- 回答日時:
エンコードの問題ってややこしいよね。
簡単に説明するね〜データベースのエンコード
- utf8mb4:これはMySQLの文字セットの一つで、完全なUTF-8エンコーディングをサポートしてる。絵文字とか特殊な文字も扱えるのが特徴。
- utf8:MySQLのutf8は実際には3バイトまでのUTF-8文字しかサポートしないので、utf8mb4を使うのが一般的。
ファイルのエンコード
- UTF-8:基本的なUTF-8エンコーディング。
- UTF-8 BOM:UTF-8にBOM(Byte Order Mark)を付けたもの。BOMがあると、いくつかの環境でファイルのエンコーディングが正しく認識される。
データベースとファイルのエンコードの関係
- データベースのエンコード(例:utf8mb4)は、データベースが文字をどう保存するかを定義するもの。
- ファイルのエンコード(例:UTF-8, UTF-8 BOM)は、ファイルが文字をどうエンコードして保存するかを定義するもの。
データベースへの接続設定
- SET NAMES utf8:これはクライアントとデータベース間の通信で使用する文字セットをUTF-8に設定するもの。
- SET NAMES utf8mb4:utf8mb4エンコーディングを使用する場合はこれを使う。
まとめ
- データベースのエンコード(utf8mb4など)とファイルのエンコード(UTF-8, UTF-8 BOM)は別物だけど、両方が正しく設定されていないと文字化けが起きることがある。
- クエリでSET NAMES utf8はあるけど、SET NAMES utf8bomはない。utf8mb4を使うならSET NAMES utf8mb4を使おう。
もしまだ混乱してるなら、具体的なエラーや文字化けの状況を教えてくれたら、もっと詳しくアドバイスできるよ
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
MYSQL で検索した結果を印刷したい
-
mySQLのデータベースにhtmlのコ...
-
どの程度のデータベースなら、c...
-
あるDBから別のDBのテーブルをs...
-
access VBAを勉強中です。DA...
-
SQLServerのselect文でデータ数...
-
データベースファイル(.db)を開...
-
PL/SQLで@ファイル名が反応しま...
-
PL/SQLをWindowsのBATファイル...
-
create databaseがうまくいきま...
-
sql*loader 数値のロード
-
OS400/DB2のデータをWebで表示...
-
mysqlにおけるホストのパーセン...
-
複数行をINSERTで『ORA-00911: ...
-
MySQLで連続csvファイルを読み...
-
弥生販売のデータベースをネッ...
-
ODBC登録の権限について
-
同じSQL文で極端に検索が遅くな...
-
【初心者です】SQLPLUSでのバッ...
-
Excel 2010の文字化け
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
あるDBから別のDBのテーブルをs...
-
SQLServerのselect文でデータ数...
-
mySQLのデータベースにhtmlのコ...
-
utf8bomとutf8mb4の違いがいま...
-
リストアするとファイルが消える
-
Amazon.comの「MARC」データベ...
-
バッチファイルではパスワード...
-
MYSQLが優位な点は?
-
access VBAを勉強中です。DA...
-
物件検索システム
-
htmlタグを含んだ文字のデータ...
-
PHPで生成した値をデータベース...
-
rubyを使って、webページを作る...
-
MySQLの権限の設定について
-
MySQLにADOを使用して接続でき...
-
データベースに配列を格納する
-
質問
-
データベース容量
-
PHPを使ってデータの抜き出し
-
どの程度のデータベースなら、c...
おすすめ情報