Enregistrer des données en arabe dans la base de données MySQL

j'ai changé le jeu de caractères des tables et de la colonne, j'ai le texte en arabe ???? marques dans la base de données MYSQL

voici le dessin de la table

  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;

quand je tire à nouveau sur la fonction query qu'elle affiche ???? comme texte?

quelqu'un Peut-il me dire où je fais mal?

24
demandé sur Romani 2011-07-28 16:32:22

5 réponses

pour insérer manuellement des données en arabe dans votre Phpmyadmin.

d'abord , vous cochez soit votre base de données, le nom de la table et la colonne est utf8 ou non. Si ceux-ci ne sont pas définis à utf8 alors vous le définissez d'abord puis vous pouvez insérer des données arabes dans votre table de db.

VOUS POUVEZ VÉRIFIER CHACUN DE CEUX-CI EN REGARDANT CI-DESSOUS L'EXEMPLE.

Pour La Base De Données:

SELECT default_character_set_name FROM information_schema.SCHEMATA S
WHERE schema_name = "schemaname";

Pour Tableaux:

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";

pour Colonnes:

SELECT character_set_name FROM information_schema.`COLUMNS` C
WHERE table_schema = "schemaname"
  AND table_name = "tablename"
  AND column_name = "columnname";

vous pouvez facilement définir utf8 à vos tables si vous utilisez SQLYog.

cliquez avec le bouton droit de la souris sur db, table, nom de colonne et cliquez sur l'option alter et réglez à

base de données Chartset = utf8 Collation de la base de données = utf8_general_ci .

De Profiter De ....

26
répondu Rizwan Shamsher Kaim Khani 2013-10-25 11:22:21

pour lire, écrire et trier le texte arabe dans la base de données mysql en utilisant php correctement, assurez-vous que:

  1. MySQL charset: UTF-8 Unicode (utf8)

  2. connexion MySQL classement: utf8_general_ci

  3. votre base de données et vos collations de tableaux sont définies à: utf8_general_ci ou utf8_unicode_ci

ensuite, ajouter ce code votre script php lorsque vous vous connectez à db:

mysql_query("SET NAMES 'utf8'");
mysql_query('SET CHARACTER SET utf8');

pour plus de détails

18
répondu Adel Bachene 2018-03-09 01:51:09

nous pouvons convertir la base de données ou la table de db à uft8 supportive avec la requête ci-dessous:

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

Espère que cela aide !

Lire La Suite @

https://kb.mediatemple.net/questions/138/Default+MySQL+caractère+set+et+classement#gs

http://hollyslog.com/technology/how-to-store-arabic-or-hebrew-characters-mysql-database

7
répondu Aditya P Bhatt 2018-02-14 12:02:00

Modifier les tables de la base des classements types de utf8_general_ci et aussi les champs de la table classements changement de utf8_general_ci .

enter image description here

4
répondu Nadeem Ijaz 2016-11-21 11:06:53

assurez-vous que votre logiciel client utilise aussi UTF-8.

http://dev.mysql.com/doc/refman/5.0/en/charset-connection.html

3
répondu sw0x2A 2011-07-28 12:39:46