2012-03-23 22 views
2

MySQLは、カスケード型の方法でデフォルトの文字設定を扱いますか?MySQLのデフォルトの文字セット

例えば、私は完全なDBを生成するスクリプトを見ていることだし、それはこのような文で始まる:

CREATE SCHEMA IF NOT EXISTS `xyz` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci ; 

ので、それはすべてのテーブルは、その一環として作成されていることを意味しませんdbはデフォルトでUTF8文字セットを使用しますか?そして、もし私が与えられたテーブルのために別の文字セットを使いたければ、単にCREATE TABLEステートメントでそれを定義しなければなりませんでしたか?それは正確ですか?特定のテーブルの特定のフィールドについても上書きできますか?ありがとう!

答えて

1

はい。文字セットと照合順序をデータベース(スキーマ)レベルで設定すると、CREATE TABLEステートメントで独自のcharset/collat​​ionを指定していない限り、そのデータベース内の新しく作成されたテーブルに適用されます。

はい、フィールド単位でcharset/collat​​ionを指定することもできます。 MySQLのマニュアルからの例:

CREATE TABLE t1 
(
    col1 VARCHAR(5) 
     CHARACTER SET latin1 
     COLLATE latin1_german1_ci 
); 
+0

説明のためにありがとう – snappymcsnap

関連する問題