1、建表時(shí)指定字符集utf-8:
創(chuàng)新互聯(lián)建站于2013年開始,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元郎溪做網(wǎng)站,已為上家服務(wù),為郎溪各地企業(yè)和個人服務(wù),聯(lián)系電話:18982081108
CREATETABLE?表名
(?`id`TINYINT(255)UNSIGNEDNOTNULLAUTO_INCREMENTPRIMARYKEY,
`content`VARCHAR(255)NOTNULL)
DEFAULTCHARACTERSET=utf8;
2、修改表的字符集為utf-8:
altertable表名converttocharactersetutf8;
擴(kuò)展資料:
1、創(chuàng)建數(shù)據(jù)庫時(shí)設(shè)置字符集:
CREATEDATABASE?數(shù)據(jù)庫名CHARACTERSETutf8COLLATEutf8_general_ci;
注意后面三個單詞之間是有下劃線的對于每個選項(xiàng)所給定的值,前面沒有等號;在第一個選項(xiàng)和第二個選項(xiàng)之間也沒有逗號。
2、修改數(shù)據(jù)庫的字符集:
alterdatabase?數(shù)據(jù)庫名charactersetutf8;
3、顯示某數(shù)據(jù)庫字符集設(shè)置:
showcreatedatabase數(shù)據(jù)庫名;
4、顯示某數(shù)據(jù)表字符集設(shè)置:
showcreatetable表名;
5、修改字段:
altertable表名modifycolumn'字段名'varchar(30)charactersetutf8notnull;
6、添加表字段:
altertable表名addcolumn'字段名'varchar(20)charactersetutf8;
方法1:通過客戶端修改表字段的默認(rèn)字符集
打開SQLyog客戶端,連接數(shù)據(jù)庫如下圖所示,點(diǎn)擊connection 按鈕 連接數(shù)據(jù)庫
我的數(shù)據(jù)庫名稱為edu,然后我隨意找到數(shù)據(jù)庫中test2表,右鍵-----》Alter Table
如果安裝數(shù)據(jù)庫的 時(shí)候 沒有選擇字符集設(shè)置,那么mysql數(shù)據(jù)庫默認(rèn)為latin1,在箭頭部分選擇utf8字符集
方法2:用數(shù)據(jù)庫命令修改字符集
首先查看當(dāng)前數(shù)據(jù)庫字符集,在命令框中執(zhí)行如下命令:show variables like 'character_set_%';
查看字符集排序設(shè)置,執(zhí)行命令:show variables like 'collation_%';
修改服務(wù)器級別字符集,執(zhí)行命令:
1,臨時(shí)修改:SET GLOBAL character_set_server=utf8;
修改表級別,命令如下:ALTER TABLE table_name DEFAULT CHARSET utf8;
修改數(shù)據(jù)庫級別,命令如下:use edu(換成你要修改的數(shù)據(jù)庫名,在這里我的數(shù)據(jù)庫為edu),,然后執(zhí)行命令:alter database edu character set utf-8;
或者修改mysql的my.ini文件中的字符集鍵值
[mysql]
[mysqld]
重啟mysql
字符集:羅列所有圖形字符的一張大表。
排序規(guī)則:定義各個圖形字符之間的大小比較規(guī)則,比如:是否區(qū)分大小寫,區(qū)分全角和半角等。在軟件使用中,一般我們只指定字符編碼即可,因?yàn)榇_定了字符編碼字符集自然就確定了。但是在數(shù)據(jù)庫類軟件中,我們除了要指定編碼規(guī)則,還需要指定排序規(guī)則,因?yàn)?,?shù)據(jù)庫是要提供模糊匹配、排序顯示功能的。sql可以查看mysql支持的字符集編碼和排序規(guī)則,其中每個字符集編碼都有一個默認(rèn)的排序規(guī)則。
使用這條命令
mysql_query("SET NAMES 'utf8'");把utf8 換成你需要的編碼,然后把數(shù)據(jù)庫的字符集也設(shè)定一樣的
set names gbk;
該命令是會話級的,也就是關(guān)閉客戶端后失效。
想永久保存的話需要修改配置文件my.cnf。
修改my.cnf
vi /etc/my.cnf
在[client]下添加,client為控制客戶端的。
default-character-set=utf8
在[mysqld]下添加,mysqld為控制服務(wù)器端的。
default-character-set=utf8
保存后重啟mysql:
service mysqld restart,重啟。
show variables like '%char%';查看。