方法一:在插入中文之前 先輸命令set names gbk 告訴客戶端你在這里敲的命令是GBK編碼的 客戶端會(huì)把你接下來敲的命令轉(zhuǎn)成UTF-8 你數(shù)據(jù)庫(kù)內(nèi)部的編碼還是UTF-8
創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),雁峰企業(yè)網(wǎng)站建設(shè),雁峰品牌網(wǎng)站建設(shè),網(wǎng)站定制,雁峰網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,雁峰網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
方法二:修改你安裝目錄下面的my.ini這個(gè)文件 編輯這個(gè)文件 找到
[mysql]
default-character-set=utf8
把default-character-set=utf8改成default-character-set=GBK
這里的意思是告訴MySQL你在客戶端敲的命令都是GBK編碼
注:不用改[mysqld]下面的default-character-set 這里的default-character-set指的是MySQL底層存儲(chǔ)的字符集編碼 可以是utf8 utf8是支持各國(guó)文字的
改過后重啟服務(wù)
方法三:根據(jù)向?qū)е匦屡渲?把編碼設(shè)成gbk或gb2312 不過這把你MySQL內(nèi)部的字符集編碼都改變了 不建議
A. 字符編碼:
使用命令行方式登陸到MySQL服務(wù)器, 建立一個(gè)數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)編碼設(shè)為UTF-8。此時(shí),如果直接在命令行窗口使用insert語句插入中文,就遇到類似 ERROR 1406 (22001): Data too long for column 'name' at row 1 錯(cuò)誤。乍一看,是字段長(zhǎng)度引起的問題,但是實(shí)際是字符編碼的問題。可是嘗試以下解決方法:
1、在Linux中,使用終端方式登陸MySQL服務(wù)器,運(yùn)行以下命令:
set names utf8;
該命令將終端的字符編碼設(shè)為了UTF-8。此后再插入數(shù)據(jù)庫(kù)中的內(nèi)容都會(huì)按照UTF-8的編碼來處理。
注意:在Linux中,終端方式中直接插入中文內(nèi)容,可能并不會(huì)出現(xiàn)1406錯(cuò)誤,但是這時(shí)插入的數(shù)據(jù)
是按照系統(tǒng)的默認(rèn)編碼進(jìn)行處理。因此對(duì)編碼為UTF-8的數(shù)據(jù)庫(kù),在顯示數(shù)據(jù)的地方可能會(huì)出現(xiàn)亂碼。
2、在Windows下,命令行窗口不支持UTF-8編碼,所以使用“set names utf8;”不會(huì)達(dá)到轉(zhuǎn)化中文的
效果。但是這個(gè)問題還是可以解決的:
(1)使用默認(rèn)編碼建立數(shù)據(jù)庫(kù)。這種情況下就可以直接輸入中文了,但是相應(yīng)的問題,就是會(huì)
失去UTF-8編碼的靈活性。特別是不利于軟件的國(guó)際化。
(2)放棄命令行窗口登錄MySQL,使用圖形化客戶端??蛻舳斯ぞ呖梢訫ySQL的官方網(wǎng)站上找到。
B. Mysql配置文件:
“在my.ini里找到sql- mode='STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'把其中 的STRICT_TRANS_TABLES,去掉,或者把sql- mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION注釋掉,然 后重啟mysql就ok了
字符編碼不對(duì) 就會(huì)這樣了 你在建數(shù)據(jù)庫(kù)的時(shí)候 最好加上這樣一句
create database tea default character set utf8 collate utf8_general_ci;
set names 'utf8';
這是對(duì)數(shù)據(jù)庫(kù)默認(rèn)字符的設(shè)置 以后對(duì)數(shù)據(jù)庫(kù)的操作都會(huì)使用utf8的字符編碼
在你的程序里 也要適當(dāng)?shù)膶?duì)字符進(jìn)行處理 這要根據(jù)的你程序定 不一樣的程序修改的形式不一樣
像你以前在命令窗口下使用MySQL無法插入中文就是典型的字符不對(duì)造成的 你在對(duì)數(shù)據(jù)庫(kù)操作之前 最好在命令窗口設(shè)置一下操作時(shí)的編碼
例如 setchar utf8;
這樣插入的時(shí)候就不會(huì)插不進(jìn)去了
mysql讓輸入的數(shù)據(jù)只能是數(shù)字和字母具體操作如下。
表中的四列表頭默認(rèn)的數(shù)據(jù)類型都是int,右鍵修改列信息,將需要帶字母顯示的列格式改為varchar(20),也就是改變數(shù)據(jù)類型,這樣正常插入帶字母的數(shù)據(jù)了。
有兩種方法...你試一下...不行的話加我的QQ
76558882
1.
修改
mysql
安裝目錄下的
my.ini
修改
default-character-set=latin1
把latin1
改為
gb2312
或
gbk
注意:
修改兩處
CLIENT
SECTION
#
----------------------------------------------------------------------
#
#
The
following
options
will
be
read
by
MySQL
client
applications.
#
Note
that
only
client
applications
shipped
by
MySQL
are
guaranteed
#
to
read
this
section.
If
you
want
your
own
MySQL
client
program
to
#
honor
these
values,
you
need
to
specify
it
as
an
option
during
the
#
MySQL
client
library
initialization.
#
[client]
port=3306
[mysql]
default-character-set=latin1
//把
latin1
改為
gb2312或
gbk
#
SERVER
SECTION
#
----------------------------------------------------------------------
#
#
The
following
options
will
be
read
by
the
MySQL
Server.
Make
sure
that
#
you
have
installed
the
server
correctly
(see
above)
so
it
reads
this
#
file.
#
[mysqld]
#
The
TCP/IP
Port
the
MySQL
Server
will
listen
on
port=3306
#Path
to
installation
directory.
All
paths
are
usually
resolved
relative
to
this.
basedir="C:/Program
Files/MySQL/MySQL
Server
5.0/"
#Path
to
the
database
root
datadir="C:/Program
Files/MySQL/MySQL
Server
5.0/Data/"
#
The
default
character
set
that
will
be
used
when
a
new
schema
or
table
is
#
created
and
no
character
set
is
defined
default-character-set=latin1
//將latin1
改為
gb2312
或
gbk
2.
進(jìn)入在命令提示符下登錄mysql
輸入
charset
gb2312
你再嘗試使用
insert
into
插入一條記看看...
mysql把語言改成中文的步驟如下:
第一步我們需要打開軟件,創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),如下圖所示:
第二步創(chuàng)建數(shù)據(jù)庫(kù)之后,需要?jiǎng)?chuàng)建一張漢字和拼音對(duì)照表,使用create table語句創(chuàng)表,如下圖所示:
第三步我們打開表,可以看到成功創(chuàng)建一張名為t_base_pinyin的表,并且含有pin_yin_和code_兩個(gè)字段,如下圖所示:
第四步我們使用INSERT INTO t_base_pinyin ()? VALUES ()語句來給漢字拼音對(duì)照表添加對(duì)照數(shù)據(jù),如下圖所示:
第五步我們打開t_base_pinyin ,可以看到對(duì)照數(shù)據(jù)已經(jīng)插入成功,如下圖所示:
第六步我們最后需要?jiǎng)?chuàng)建一個(gè)拼音轉(zhuǎn)換漢字的函數(shù),輸入完成之后進(jìn)行執(zhí)行,語句如下圖所示:
第七步我們輸入select to_pinyin('測(cè)試')語句進(jìn)行查詢,可以看到輸出to_pinyin('測(cè)試'),ceshi,已經(jīng)成功將中文轉(zhuǎn)換成拼音,如下圖所示: