Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie kann ich Daten in einer anderen Sprache als Englisch (Bangla) in diese Datenbanktabelle eingeben?

Wie von @Tim darauf hingewiesen, müssen Sie die collation ändern Ihrer Tabelle/Datenbank/Spalte nach UTF-8 . Überprüfen Sie zuerst die Sortierung Ihrer database/table/column .

SORTIERUNG PRÜFEN:

So überprüfen Sie die Sortierung von DATABASE:

SELECT
    default_character_set_name
FROM
    information_schema.SCHEMATA
WHERE
    schema_name = "YOUR_DATABASE_NAME";

So überprüfen Sie die Sortierung von TABLE:

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 = "YOUR_DATABASE_NAME"
AND T.table_name = "YOUR_TABLE_NAME";

So überprüfen Sie die Sortierung einer SPALTE:

SELECT
    character_set_name
FROM
    information_schema.`COLUMNS`
WHERE
    table_schema = "YOUR_DATABASE_NAME"
AND table_name = "YOUR_TABLE_NAME"
AND column_name = "YOUR_COLUMN_NAME";

SORTIERUNG ändern:

So ändern Sie die Sortierung der Datenbank:

ALTER DATABASE YOUR_DATABASE_NAME CHARACTER SET utf8 COLLATE utf8_unicode_ci;

So ändern Sie die Tabellensortierung:

ALTER TABLE YOUR_TABLE_NAME CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;

So ändern Sie die Spaltensortierung:

ALTER TABLE YOUR_TABLE_NAME MODIFY YOUR_COLUMN_NAME VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Beispiel:

DROP TABLE IF EXISTS `sample_table`;
CREATE TABLE `sample_table` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  `language` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO sample_table(name,language) VALUES('Ed Sheeran','English');
INSERT INTO sample_table(name,language) VALUES('আয়েশা খাতুন সুজানা','আমার সোনার বাংলা');

Schau mal, das CHARSET in der Tabellendefinition verwendet wird, ist utf8 . Sie können also unicode characters speichern in der Tabelle.

Überprüfen Sie, ob die Daten richtig eingefügt wurden oder nicht.

SELECT * FROM sample_table;

Ergebnis:

| id |               name |         language |
|----|--------------------|------------------|
|  1 |         Ed Sheeran |          English |
|  2 |    আয়েশা খাতুন সুজানা |  আমার সোনার বাংলা |