1. 程式人生 > >Mysql編碼之檢視、修改總結

Mysql編碼之檢視、修改總結

為了下面測試的方便,咱們先用下面的語句建立一個數據庫,並在新建立的資料庫中建立一張表。

create database test_character;

create table test_character.test(
    id int(10) primary key,
    address varchar(30)
);

檢視mysql全域性的編碼設定

show variables like 'character%';

這裡寫圖片描述

show variables like 'collation%';

這裡寫圖片描述

檢視單個數據庫的編碼設定

#方法一:
select * from information_schema.schemata where
schema_name="test_character";
#方法二: show crate database test_character;

檢視單個表的編碼設定

show crate table test_character.test;

嗯。。關鍵部分來了,上面主要介紹怎樣檢視編碼,但是如果編碼不統一,很容易出現中文亂碼,下面介紹在多個層面上修改編碼設定

建立資料庫時直接指定編碼

create database <資料庫名> character set utf8;

修改資料庫的編碼

alter database <資料庫名> character
set utf8;

建立表時指定編碼

create table <表名> (
    id int(10),
    name varchar(20)
)default charset=utf8;

修改表的編碼

alter table <表名> character set utf8;

其實呢,上面的改動都是細粒度的編碼改動,怎麼樣針對mysql本身進行改動呢?大致有兩種方法:一是直接set命令進行改動,但這種改動並不能永久生效,僅僅針對當前會話;二是通過修改配置檔案進行改動,這種改動是永久生效的,也是比較提倡的。

通過set命令修改,無法永久生效

#這些更改無法永久生效,只在當前會話中生效,當關閉客戶端時就恢復成原來的編碼了
set character_set_client=utf8 set character_set_connection=utf8 set character_set_database=utf8 set character_set_results=utf8 set character_set_server=utf8


更改配置檔案永久生效

因為我目前使用的是windows 7 系統,所有主要針對此係統進行說明,通常啟動mysql服務時會有一個預設的配置檔案路徑,這點大家注意了,你需要百分百確定你知道預設配置路徑在哪裡,我就在這裡遇到了一個坑。
windows下查詢配置檔案路徑的常用方法:

  • 通過mysql對應的服務檢視

    這裡寫圖片描述

  • 通過登錄檔檢視

這裡寫圖片描述

這裡寫圖片描述

  • 命令方式

我不知道啊,網上一堆關於linux下查詢的方法,各位知道windows下命令的話,求告知!!

#linux下的命令
mysqld --verbose --help | grep -A 1 'Default options'

找到的my.ini或者my.cnf位置的話,接下來就是修改了,前方注意:
請根據你的mysql的版本進行配置的修改,不同的mysql版本修改方法是不一樣的,因為目前我使用5.7的版本,所以我的修改命令如下

[mysql]
default-character-set=utf8
[mysqld]
 character_set_server=utf8 
 collation_server=utf8_general_ci 

嗯。。差不多能說的也就這些了,不僅mysql,對於很多的東西都存在編碼問題,關鍵在於編碼的統一,如果編碼不統一,就很可能出現亂碼問題

相關推薦

Mysql編碼檢視修改總結

為了下面測試的方便,咱們先用下面的語句建立一個數據庫,並在新建立的資料庫中建立一張表。 create database test_character; create table test_character.test( id int(10) pr

MySQL-SQL檢視儲存過程

例如一個使用者表customers(主鍵為cust_id),一個使用者可以有多個訂單,訂單表為orders(主鍵為order_num,外來鍵為cust_id),一個訂單有多個訂單項,訂單項表是orderitems(主鍵order_num,order_item,外

MySQL檢視修改資料庫編碼

MySQL之檢視與修改資料庫編碼 Windows下修改mysql資料庫編碼 (1)管理員身份進入cmd,輸入:mysql -h伺服器地址 -u使用者名稱 -p密碼 ,最後按回車就行 2. 輸入show variables like ‘%character%’;

簡單學習四Mysql語句檢視

Mysql檢視 1、建立檢視 --格式:CREATE VIEW 檢視名稱 AS SQL語 例: create view v1 as select * from a where part_nid > 3 2、刪除檢視 --格式:DROP VIEW 檢視名稱 例: drop vi

檢視修改mysql的使用者名稱和密碼

一、檢視密碼     這時你需要進入/etc/mysql目錄下,執行sudo  vi debian.cnf或者sudo vimdebian.cnf檢視裡面的使用者名稱和密碼,     然後使用這個檔案中的使用者名稱和密碼進

1mysql登入退出重啟密碼檢視修改等資料庫基礎操作

1 工作環境 cmd命令視窗 2 登入: mysql -hlocalhost -uroot -p 3 退出   exit 4 關閉和重新資料庫(需要退出資料庫環境) net stop mysql net start mysql 5 密碼檢視 select

Mysql檢視索引外來鍵觸發器

1、檢視: 1、概念:就是一個假表; 2、作用:直觀,便於我們對資料進行觀察。 3、建立檢視: create view 檢視名 as select 欄位名1,欄位名2 from 表名; 注意:多少個欄位名你自己加。 4、檢視檢視結構:desc 檢視名;

MySQL檢視觸發器事務儲存過程

http://www.cnblogs.com/linhaifeng/articles/7495918.html 檢視 ​ 試圖就是一個虛擬表(非真實存在),本質就是【根據sql語句獲取動態的資料集,併為其命名】,使用者使用時只需要使用名稱即可獲取資料集,可將該資料集當作表來使用。 ''' what: 檢

MySQL資料庫檢視檢視定義建立檢視修改檢視

檢視是指計算機資料庫中的檢視,是一個虛擬表,其內容由查詢定義。同真實的表一樣,檢視包含一系列帶有名稱的列和行資料。但是,檢視並不在資料庫中以儲存的資料值集形式存在。行和列資料來自由定義檢視的查詢所引用的表,並且在引用檢視時動態生成。——百度百科 關係型

Centos6.8 檢視修改MySQL資料庫引擎

mysql> show engines \G; ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id:    4 Current database: ***

MySQL知識(十五)——儲存過程的呼叫檢視修改和刪除

2 呼叫儲存過程   儲存過程必須使用CALL語句呼叫,並且儲存過程和資料庫相關,如果要執行其他資料庫中的儲存過程,需要指定資料庫名稱,例如CALL dbname.procname。儲存函式的呼叫與MySQL中預定義的函式的呼叫方式相同。   呼叫儲存過程示

mysql檢視修改指定埠登入

一、檢視埠: 1.在命令列中輸入:mysqld --console,輸出的資訊可以看到埠號 2.登入本地或遠端mysql,輸入show global variables like 'port',這種方法其實是很多餘的,因為你能登入成功mysql,不是使用預設3306埠,就是

MySQL:創建修改和刪除表

rop ont ... rst incr arc bigint 第一個 desc 1.創建數據庫:CREATE DATABASE 數據庫名;  刪除數據庫:DROP DATABASE 數據庫名;  查看數據庫編碼:SHOW CREATE DATABASE 數據庫名;

Mysql 基礎 DMLDDLDCL定義

DDL、DDL、DCL一、DML 數據操縱語言(Data Manipulation Language, DML)是SQL語言中,負責對數據庫對象運行數據訪問工作的指令集,以INSERT、UPDATE、DELETE三種指令為核心,分別代表插入、更新與刪除,是開發以數據為中心的應用程序必定會使用到的指令

Mysql約束以及修改資料表

unsigned:這裡約束的意思是沒符號,不能為負數,只能是整數 建立外來鍵約束的表格 提示: 給表新增外來鍵約束的時候,外來鍵列和參照列必須的型別必須一致,就好比上圖的中的兩個表格的型別都是int,但是當我們的父表的型別是smallint,而子表的型別是bigint,這樣也是會

Mysql基礎教程-Mysql的字符集檢視修改

Show variables like “%char%”修改mysql的字符集----資料庫級1)臨時的修改Set global character-set_server=utf82)永久修改Alter database commany set utf8 collate utf8_general_ci; -

MySQL基礎 統計函數總結

sum() sql基礎 max ted where match span sele affect 五種統計函數:count()、max()、avg()、min()、max()函數 count()函數 count()函數在進行計算的時候,是分情況進行計算的,主要是一下兩種 1

mysql小結——忘記密碼修改密碼

  對於我這種“老年人”記住密碼真的是很難的一件事,現階段圖方便給個123456的密碼倒是沒什麼,以後可得注意密碼安全。 如有需求,也可檢視如下小結:mysql小結——基礎篇   首先以下操作全部是在 命令提示符 中,通過管理員身份進行的: 忘記密碼後的重置密碼過程: 1.關閉mysql56 2

Mysql的字符集檢視修改

Show variables like “%char%” 修改mysql的字符集 ----資料庫級 1)臨時的修改 Set global character-set_server=utf8 2)永久修改 Alter database commany set utf8 collate utf8

如何在cmd命令列中檢視修改刪除與新增環境變數

1、檢視當前所有可用的環境變數:輸入 set 即可檢視。 2、檢視某個環境變數:輸入 “set 變數名”即可,比如想檢視path變數的值,即輸入 set path 3、修改環境變數 :輸入 “set 變數名=變數內容”即可,比如將path設定為“d:\nmake.exe”,只要輸入set