이 기사의 예에서는 MySQL이 명령줄에서 SQL 스크립트를 가져올 때 중국어 문자가 왜곡되는 문제에 대한 솔루션을 설명합니다. 참고하실 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.
그래픽 인터페이스 관리 도구인 MySql 쿼리 브라우저(스크립트에는 데이터베이스 생성, 테이블 생성 및 데이터 추가가 포함됨)에서 스크립트를 열고 문제 없이 실행합니다. 그러나 데이터베이스 생성을 실행하기 위해 mysql 명령줄 도구를 사용할 경우에는 문제가 없습니다. 스크립트에 한자가 포함되어 있으면 저장된 데이터가 깨지거나 ???로 표시됩니다. . .
해결책 1: MySql 설치 디렉터리에서 my.ini를 찾습니다. [mysql] 아래의 default-character-set=latin1을 default-character-set= utf8로 변경합니다. 명령줄에서 성공적으로 가져오려면 MySql 서비스를 저장한 다음 다시 시작하세요. 단점은 배포 중에 사용자 컴퓨터가 구성되지 않을 수 있으므로 방법 1이 쓸모가 없다는 것입니다. . .
해결책 2:데이터베이스 스크립트 파일의 시작 부분에 줄 집합 문자 집합 utf8;을 추가하고 그 뒤에 기본 문자 집합 utf8을 추가합니다. 라이브러리 이름)을 추가한 다음 기본 charset =utf8;을 추가하고 데이터를 추가하기 전에 set 문자 세트 utf8; 행을 추가합니다.
참고: 제가 사용하는 MYSQL 버전은 5.1입니다.
set character set utf8; drop database if exists 库名 create database 库名 DEFAULT CHARACTER SET utf8; use 库名; /*==============================================================*/ /* Table: 表名 */ /*==============================================================*/ drop table if exists 表名; create table 表名 ( PID int AUTO_INCREMENT, PName nvarchar(20) null, Remark nvarchar(50) null, constraint PK_POSITION primary key (PID) )DEFAULT CHARSET=utf8; /*=====================================================*/ /*添加数据*/ /*=====================================================*/ set character set utf8; insert 表名(PName,Remark) values ('1,''); insert 表名(PName,Remark) values ('2,'');
더 많은 MySQL 관련 콘텐츠에 관심이 있는 독자는 이 사이트의 특별 주제인 "MySQL 인덱스 작업 기술 요약", "MySQL 로그 작업 기술 종합 모음", "MySQL 트랜잭션 작업 기술 요약"을 확인할 수 있습니다. , "MySQL 저장 프로시저 기술 종합 모음" , "MySQL 데이터베이스 잠금 관련 기술 요약" 및 "자주 사용되는 MySQL 함수 요약"
이 기사가 MySQL 데이터베이스를 계획하는 모든 사람에게 도움이 되기를 바랍니다.