34


7

MySQLにUnicodeを保存する方法は?

MySQLの無料版にUnicodeを保存するにはどうすればよいですか?

SQL Serverのような `nvarchar`型はないようです。 UnicodeはMySQLでサポートされていませんか? 「テキスト」を使用してみましたが、それも機能していません。

6 Answer


25


テーブルには `utf8_ *`文字セットを選択する必要があります。 テキストおよびメモフィールドは、UTF-8で自動的に保存されます。 UTF-16のサポートはmySQL 6で提供される予定です。


17


特定の文字列列の文字セット( CHAR、` VARCHAR`、または * TEXT)は、http://dev.mysql.com/doc/refman/5.0/en/charset.html [* character set および/または collat​​ion *]。 これは非常に熱心なトピックなので、リンクしたドキュメントを読むのが最善です。 例えば:

CREATE TABLE t1
(
    col1 CHAR(10) CHARACTER SET utf8 COLLATE utf8_unicode_ci
)

UTF-8エンコーディングでコンテンツを保存する「col1」を持つテーブル「t1」を作成します。


2


接続後に名前を設定しようとしましたか? Unicode文字を保存しようとした結果はどうでしたか? mysqlサーバーに接続して、これを入力します。

SET NAMES UTF8;

これにより、utf8の「サポート」が有効になります。 次に、utfデータを保存してみてください。


2


私は自分のスタイルのコーディングに従っていますので、リードをフォローするときはそれを考慮してください。

最初に、MySqlデータベースを作成しました。

データベースを作成したら、mysqlコマンドプロンプトで次のコマンドを入力します。

SET NAMES = UTF8;

Unicodeを保存するテーブルと列は、utf8-utf_general_ciの照合プロパティで設定されます。 Unicodeを格納することを意図したすべての列を選択し、照合プロパティをutf8-utf_general_ciに設定します。

これでC#になりました。

接続文字列は通常どおり設定されますが、次のような単一の属性が追加されます。

constring = @"SERVER=localhost;" + @"PORT=3306;" + @"DATABASE=gayakidb;" + @"UID=root;" + @"PASSWORD=mysql;" + @"charset=utf8;";

次に、システムOSの「表示言語設定」にUnicodeフォントをインストールします。 または、オペレーティングシステムのFontsフォルダーにフォントファイル(True Typeファイル)をコピーして貼り付けることができます。

次に、プロパティページでテキストボックスオブジェクトまたはその他のツールオブジェクトのフォントプロパティを設定します。

さらに、キーボードを使用してUnicodeフォントを入力する必要がある場合は、キーボードレイアウト用のUnicode言語をインストールする必要があります。 これは、オペレーティングシステムの地域の言語設定のオプションを使用して実行できます。

完了しました。 これらの設定により、データを保存するためのモジュールをコーディングし、ocdeの実行中に正常に作業を完了しました。


2


このクエリを使用

alter table `DBNAME`.`TblName`  Engine=InnoDB checksum=1 comment='' delay_key_write=1 row_format=dynamic charset=utf8 collate=utf8_unicode_ci


1


http://www.oreillynet.com/onlamp/blog/2006/01/turning_mysql_data_in_latin1_t.html - これはあなたを助けることができると思います