テーブルと列の文字セットを変更しました。アラビア語のテキストは???? MYSQLデータベースのマーク
こちらがテーブルのデザインです
CREATE DATABASE mydb
DEFAULT CHARACTER SET utf8
DEFAULT COLLATE utf8_general_ci;
CREATE TABLE `categories` (
`category_id` tinyint(2) NOT NULL auto_increment,
`category_name` varchar(50)character set utf8 NOT NULL ,
PRIMARY KEY (`category_id`)
insert into `mydb`.`categories`
(`category_id`, `category_name`)
values (1,'کتگوری');
commit;
選択クエリを再度実行すると、????テキストとして?
誰が私が間違っているのか教えてもらえますか?
アラビア語データをPhpmyadminに手動で挿入するには。
まず、データベース、テーブル、および列の名前がutf8に設定されているかどうかを確認します。これらがutf8に設定されていない場合、最初に設定してから、アラビア語のデータをdbテーブルに挿入できます。
データベースの場合:
SELECT default_character_set_name FROM information_schema.SCHEMATA S
WHERE schema_name = "schemaname";
テーブルの場合:
SELECT CCSA.character_set_name FROM information_schema.`TABLES` T,
information_schema.`COLLATION_CHARACTER_SET_APPLICABILITY` CCSA
WHERE CCSA.collation_name = T.table_collation
AND T.table_schema = "schemaname"
AND T.table_name = "tablename";
列の場合:
SELECT character_set_name FROM information_schema.`COLUMNS` C
WHERE table_schema = "schemaname"
AND table_name = "tablename"
AND column_name = "columnname";
SQLYogを使用している場合は、テーブルにutf8を簡単に設定できます。
Db、テーブル、列名を右クリックし、alterオプションをクリックして、
データベースチャートセット= utf8データベース照合= utf8_general_ci.
ただ楽しんで ....
Phpを使用してmysqlデータベース内のアラビア語テキストを正しく読み取り、書き込み、ソートするには、次のことを確認してください。
MySQL文字セット:UTF-8 Unicode(utf8)
MySQL接続の照合:utf8_general_ci
データベースとテーブルの照合は次のように設定されます:utf8_general_ci
またはutf8_unicode_ci
次に、dbに接続するときに、phpスクリプトに次のコードを追加します。
mysql_query("SET NAMES 'utf8'");
mysql_query('SET CHARACTER SET utf8');
以下のクエリを使用して、データベースまたはdbテーブルをuft8サポートに変換できます。
ALTER DATABASE dbname CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE tablename CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE columnname DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
それが役に立てば幸い !
続きを読む @
https://kb.mediatemple.net/questions/138/Default+MySQL+character+set+and+collation#gs
http://hollyslog.com/technology/how-to-store-arabic-or-hebrew-characters-mysql-database
クライアントソフトウェアもUTF-8を使用していることを確認してください。
http://dev.mysql.com/doc/refman/5.0/en/charset-connection.html
このコードを試してください:
$conn = new mysqli($server,$username,$password,$dbname);
$conn->set_charset("UTF8");
CREATE TABLE mydb.categories
(category_id tinyint(2) NOT NULL AUTO_INCREMENT
,category_name MEDIUMTEXT NOT NULL
,PRIMARY KEY (category_id)) DEFAULT CHARACTER SET utf8