mysql 數設定據庫編碼及避免匯入亂碼問題

2021-07-22 17:58:31 字數 1258 閱讀 8728

mysql會出現中文亂碼的原因不外乎下列幾點:

1.server本身設定問題,例如還停留在latin1

2.table的語系設定問題(包含character與collation)

3.客戶端程式(例如php)的連線語系設定問題

一、避免建立資料庫及表出現中文亂碼和檢視編碼方法

1、建立資料庫的時候:create database `test`

character set 'utf8'

collate 'utf8_general_ci';

2、建表的時候          create table `database_user` (

`id` varchar(40) not null default '',

`userid` varchar(40) not null default '',

) engine=innodb default charset=utf8;

3,檢視mysql資料庫當前編碼:

show variables like 'character%';

2,執行set names utf8的效果等同於同時設定如下:

set character_set_client='utf8';

set character_set_connection='utf8';

set character_set_results='utf8';

二、避免匯入資料有中文亂碼的問題

1,設定預設編碼為utf8:

mysql> set names utf8;

2,建立資料庫db_name預設為utf8

create database `db_name` character set 'utf8' collate 'utf8_general_ci';

更改資料庫db_name預設為utf8:

alter database `db_name` default character set utf8 collate utf8_general_ci;

3,匯入資料庫資料sql:

(1)選擇資料庫

mysql>use abc;

(2)設定資料庫編碼

mysql>set names utf8;

(3)匯入資料(注意sql檔案的路徑)

mysql>source /home/abc/abc.sql;

mysql> source d:\meeting.sql;

Mysql運算元據庫及表DDL

運算元據庫ddl 建立和查詢 查詢資料庫 show datdabases 檢視資料庫的字符集 show create database 資料庫名稱 建立資料庫 create database 資料庫名稱 建立資料庫時判斷是否存在 create database if not exists 資料庫名稱...

pymysql模組運算元據庫與mysql資料備份

目錄 使用mysqldump實現資料庫的備份 mysqldump uroot p b d 庫名 f 資料庫備份練習 crm2stru.sql enter password mysqldump也是mysql資料庫的乙個命令,u使用者名稱,p密碼 b指的是在備份資料的時候,備份的資料增加建庫的語句和us...

mysql資料庫編碼設定

1.mysql基礎操作 1 啟動資料庫命令 net start mysql 2 關閉資料庫命令 net stop mysql 3 進入資料庫 mysql u root p 4 設定編碼格式為utf8 set character set client utf8 set character set se...