拼音排序mysql_MySQL拼音排序解决方案解决办法
mysql拼音排序解決方案
有個學(xué)生問到mysql中文按拼音排序的問題,因是j2ee應(yīng)用,最好保持原應(yīng)用的頁面和數(shù)據(jù)庫編碼utf-8不變。現(xiàn)貼出自己的方案如下,不知是否有其他就更好的方法希朋友們指出?
1.說明:
windowXP
版本:mysql5.1.14
jdbc驅(qū)動:mysql-connector-java-5.0.4-bin.jar
jdbc ? URL: ? ? ? ? jdbc:mysql://localhost/test?user=root&password=root
頁面編碼utf-8:
contentType= "text/html; ? charset=utf-8 " ? pageEncoding= "UTF-8 "%>
2.mysql數(shù)據(jù)庫字符集:
方式一:
啟動服務(wù):mysqld ? ? --default-character-set=utf8
方式二:
在my.ini中設(shè)置[mysqld]小節(jié):default-character-set=utf8
,然后啟動mysql服務(wù)。
3.創(chuàng)建測試庫、表:
create ? database ? test_db
use ? test
create ? table ? test(
name ? varchar(20)
)character ? set ? gb2312 ? collate ? gb2312_chinese_ci;
alter ? table ? test ? character ? set ? utf8;
4.核實(shí)測試表:
show ? create ? table ? test;
+-------+-------------------------------------------------
| ? Table ? | ? Create ? Table
+-------+-------------------------------------------------
| ? test ? ? | ? CREATE ? TABLE ? `test` ? (
`name` ? varchar(20) ? CHARACTER ? SET ? gb2312 ? DEFAULT ? NULL
) ? ENGINE=MyISAM ? DEFAULT ? CHARSET=utf8 ? |
+-------+-------------------------------------------------
存儲引擎根據(jù)實(shí)際情況可以修改為innoDB
5.插入測試數(shù)據(jù):
mysql> set ? names ? gb2312;
mysql> show ? variables ? ? where ? variable_name ? like ? '%character% ';
+--------------------------+-------------------------------------------
| ? Variable_name ? ? ? ? ? ? ? ? ? ? ? ? | ? Value
+--------------------------+-------------------------------------------
| ? character_set_client ? ? ? ? ? | ? gb2312
| ? character_set_connection ? | ? gb2312
| ? character_set_database ? ? ? | ? utf8
| ? character_set_filesystem ? | ? binary
| ? character_set_results ? ? ? ? | ? gb2312
| ? character_set_server ? ? ? ? ? | ? utf8
| ? character_set_system ? ? ? ? ? | ? utf8
insert ? into ? test ? values( '必 ');
insert ? into ? test ? values( '吳 ');
insert ? into ? test ? values( '在 ');
insert ? into ? test ? values( '哦 ');
insert ? into ? test ? values( '惡 ');
insert ? into ? test ? values( '是 ');
insert ? into ? test ? values( '提 ');
insert ? into ? test ? values( '阿 ');
select ? * ? from ? test ? ordber ? by ? name;
6.從jsp頁面上檢索、提交中文數(shù)據(jù),正常。
------解決方案--------------------
原創(chuàng)文章,轉(zhuǎn)載請注明: 轉(zhuǎn)載自搞代碼
微信 賞一包辣條吧~
支付寶 賞一聽可樂吧~
總結(jié)
以上是生活随笔為你收集整理的拼音排序mysql_MySQL拼音排序解决方案解决办法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Vcpkg使用方法
- 下一篇: 电脑小技巧:怎么取消电脑开机密码