web-dev-qa-db-ja.com

Mysqlにヒンディー語を挿入する方法

文字セットセットを変更しましたが、機能しません

CREATE TABLE `tbl_hindi` (
  `data` varchar(1000) character set utf8 collate utf8_bin default NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO `tbl_hindi` VALUES ('कंप्यूटर');
8
Sanjay Dutt

データベースの文字セットはutf8_unicode_ciである必要があります。

新しいデータベースと新しいテーブルを作成してみてください。

CREATE DATABASE hindi_test
    CHARACTER SET utf8
    COLLATE utf8_unicode_ci;

USE hindi_test;

CREATE TABLE `hindi` (
    `data` varchar(200) COLLATE utf8_unicode_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

INSERT INTO `hindi` (`data`) VALUES
    ('कंप्यूटर');

これは私のインストールで機能します。うまくいかない場合は、サーバーの設定に問題がある可能性があります。

19
Jørgen R

データベースを変更する必要はありません。必要なのはテーブルの列を変更することだけです。

ALTER TABLE `YOUR TABLE` CHANGE `data ` `data ` VARCHAR(1000) 
CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL; 

この変更は正常に機能し、非常に実行可能です。

5
anwerj

テーブルがすでに作成されていて、問題が(自分の)ローカル言語文字の格納に関するものである場合は、utf8_general_ciまたはutf16_general_ciが適しています。次のクエリを実行します。

ALTER TABLE 'tbl_hindi' CHANGE 'data' 'data' VARCHAR(100) CHARSET utf8 COLLATE utf16_general_ci DEFAULT '' NOT NULL;

これでも問題が解決しない場合は、データベースの照合順序をutf16_general_ciに変更してみてください。

3
sifr_dot_in

このコードを使用してヒンディー語の値を挿入するには、テーブルを変更する必要があります

`ALTER TABLE 'your table name' MODIFY 'column name' VARCHAR(20) CHARACTER SET UTF8;`

ウェブページにヒンディー語を表示するには、コードを使用する必要があります

`<meta charset="UTF-8">`

<head>タグの間。

これについての詳細な説明については、 ここをクリック 詳細を知ることができます。

ハッピーコーディング!

1

これを試して:

CREATE TABLE tbl_hindi (
    data nvarchar(1000),
);
INSERT INTO tbl_hindi VALUES (N'कंप्यूटर');
SELECT * FROM tbl_hindi;
0
bilal chaudhari

phpmyadminからテーブルの照合順序をutf16_general_ciに変更します...注:それは私のために機能しました。

0
danish-khan-I