MySQL 데이터베이스에 한자를 삽입하려고 할 때 문자 세트 인코딩 불일치로 인해 어려움을 겪을 수 있습니다. 이 문제를 해결하려면 다음 단계를 따르십시오.
데이터베이스 테이블을 생성할 때 문자 집합을 UTF-8로 지정하세요.
<code class="sql">CREATE TABLE table_name ( ... ) CHARACTER SET = utf8;</code>
테이블에 중국어 문자를 삽입할 때 필드의 문자 집합을 UTF-8로 지정하세요.
<code class="sql">ALTER TABLE table_name MODIFY COLUMN field_name VARCHAR(255) CHARACTER SET utf8;</code>
<code class="sql">ALTER DATABASE dbname CHARACTER SET = utf8; ALTER TABLE table_name DEFAULT CHARACTER SET = utf8;</code>
<code class="sql">SET CHARACTER SET utf8;</code>
<code class="sql">SET NAMES 'utf8';</code>
<code class="php">mysql_set_charset('utf8', $link);</code>
관련 기사:
추가 자료:
다음은 문제 해결 방법을 보여주는 자세한 코드 샘플입니다.
<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>
위 내용은 MySQL에 한자를 삽입하는 문제를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!