Maison > base de données > tutoriel mysql > le corps du texte

Comment résoudre le problème de l'insertion de caractères chinois dans MySQL ?

Patricia Arquette
Libérer: 2024-10-30 18:05:03
original
314 Les gens l'ont consulté

How to Solve the Issue of Inserting Chinese Characters into MySQL?

Impossible d'insérer des caractères chinois dans MySQL

Lorsque vous essayez d'insérer des caractères chinois dans une base de données MySQL, vous pouvez rencontrer des difficultés dues à des incompatibilités d'encodage des jeux de caractères. Pour résoudre ce problème, suivez ces étapes :

Créez la table avec le codage UTF-8

Lors de la création de la table de base de données, spécifiez le jeu de caractères comme UTF-8 :

<code class="sql">CREATE TABLE table_name (
    ...
) CHARACTER SET = utf8;</code>
Copier après la connexion

Utilisez UTF-8 pour les champs de tableau

Lors de l'insertion de caractères chinois dans un tableau, spécifiez le jeu de caractères du champ comme UTF-8 :

<code class="sql">ALTER TABLE table_name
MODIFY COLUMN field_name VARCHAR(255) CHARACTER SET utf8;</code>
Copier après la connexion

Utilisez UTF-8 pour la base de données et Tableau

<code class="sql">ALTER DATABASE dbname CHARACTER SET = utf8;

ALTER TABLE table_name
DEFAULT CHARACTER SET = utf8;</code>
Copier après la connexion

Méthodes avancées pour les anciennes versions de MySQL

Définir le jeu de caractères de connexion

<code class="sql">SET CHARACTER SET utf8;</code>
Copier après la connexion

Utiliser SET NAMES

<code class="sql">SET NAMES 'utf8';</code>
Copier après la connexion

Utiliser mysql_set_charset( ) Fonction

<code class="php">mysql_set_charset('utf8', $link);</code>
Copier après la connexion

Lire la suite

Articles connexes :

  • [Jeux de caractères et classements MySQL](https://dev .mysql.com/doc/refman/8.0/en/charset-charsets.html)
  • [Comment résoudre le problème de codage de caractères UTF-8 dans la base de données MySQL](https://www.digitizor.com/ articles/how-to-solve-utf-8-character-encoding-issue-in-mysql-database/)

Ressources supplémentaires :

  • [Documentation sur les encodages et les classements de caractères MySQL](https://www.mysql.com/support/documentation/1/character-sets-encodings.html)
  • [Thème de débordement de pile](https:/ /stackoverflow.com/questions/15259744/how-to-allow-mysql-to-store-utf8-character-set-properly)
  • [Tutoriel PHP MySQL](https://www.w3schools.com /php/php_mysql_intro.asp)

Exemple de code détaillé

Voici un exemple de code détaillé qui montre comment résoudre le problème :

<code class="php"><?php

$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);

// Set connection character set to UTF-8
$conn->set_charset("utf8");

// Create database and table with UTF-8 encoding
$conn->query("CREATE DATABASE IF NOT EXISTS mydb CHARACTER SET utf8");
$conn->query("CREATE TABLE IF NOT EXISTS mydb.mytable (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255) CHARACTER SET utf8)");

// Insert Chinese characters into the table
$sql = "INSERT INTO mydb.mytable (name) VALUES (?)";
$stmt = $conn->prepare($sql);
$stmt->bind_param("s", $name);
$name = "你好";
$stmt->execute();

// Close connection
$stmt->close();
$conn->close();

?></code>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!