亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
12下一頁
最近訪問板塊 發(fā)新帖
查看: 6850 | 回復: 14
打印 上一主題 下一主題

求解決導出數(shù)據(jù)庫亂碼問題? [復制鏈接]

論壇徽章:
0
跳轉到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2007-02-27 09:24 |只看該作者 |倒序瀏覽
你隨便建立一個數(shù)據(jù)庫,然后將如下表、視圖、數(shù)據(jù)導入,然后用mysqldump導出整個數(shù)據(jù)庫檢查導出的文件中中英文顯示是否正常。我將my.ini文件 數(shù)據(jù)庫 表等字符集設為latin1 gb2312 gbk utf8 等均有不能正常顯示的現(xiàn)象。本來使用latin1字符集 插入中文 顯示中文數(shù)據(jù)庫均沒問題,但是后來建立了視圖,as后面的中文導出也沒問題,但有一個表的字段(czy.leve)是數(shù)字 我需要在視圖中將其轉換為中文顯示 所以加了if條件,沒想到的是 無論怎樣設字符集 當導出數(shù)據(jù)庫后 這個視圖中的if中的中文均顯示為`????` 如下蘭字處是導出后的效果,但將數(shù)據(jù)庫設為utf8時 這個視圖導出中文顯示沒問題 但其它漢字顯示或英文字段名顯示就有問題,反正視圖中if條件正常了,就有的地方不正常。
if((`czy`.`leve` = 1),
    _latin1'?????',
    if((`czy`.`leve` = 2),
   _latin1?????',
    _latin1?????')) AS `級別
`

其中_latin1是我修改數(shù)據(jù)庫字符集造成的 大家可以隨便更改數(shù)據(jù)數(shù)據(jù)庫、表字符集。

求教如何設置數(shù)據(jù)庫字符集 或加什么參數(shù)導出數(shù)據(jù)庫 視圖中的漢字不出現(xiàn)以上問題,大家在你的機器上試試。我原以為mysql5.10版本的問題 結果更換了5.0.22也是如此。

注:中文不正常只出現(xiàn)在視圖中 其它地方?jīng)]問題,另外 如果視圖中使用了如
select  from table where fieldname='漢字' 形式 導出數(shù)據(jù)庫后'漢字' 這部分也是亂碼'?????'。


drop table if exists `czy`;
CREATE TABLE `czy` (
  `czycode` char(4) NOT NULL,
  `czyname` varchar(30) default null,
  `leve` tinyint(1) default NULL,
  PRIMARY KEY  (`czycode`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1

drop VIEW if exists `view_czy`;
CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `view_czy` AS
  select
    `czy`.`czycode` AS `代碼`,
    `czy`.`czyname` as `姓名`,
    if((`czy`.`leve` = 1),
    '操作員',
    if((`czy`.`leve`=2),
    '出納員',
    if((`czy`.`leve`=9),
    '管理員','其它'))) AS `級別`
  from
    `czy`
  order by
    `czy`.`czycode`;
   
INSERT INTO `czy` (`czycode`, `leve`, `czyname`) VALUES
  ('0000',1,'李三'),
  ('0001',2,'李四');

論壇徽章:
0
2 [報告]
發(fā)表于 2007-02-27 10:12 |只看該作者
還是這個問題啊,辛苦了

論壇徽章:
0
3 [報告]
發(fā)表于 2007-02-28 14:17 |只看該作者
up

論壇徽章:
0
4 [報告]
發(fā)表于 2007-03-01 09:58 |只看該作者
難道真的沒人能解決嗎?

論壇徽章:
0
5 [報告]
發(fā)表于 2007-03-08 14:19 |只看該作者
難道真的沒人能解決嗎?

論壇徽章:
0
6 [報告]
發(fā)表于 2007-03-09 08:40 |只看該作者
原文:http://www.phpchina.com/10458/viewspace_4782.html
希望能有用。

1.數(shù)據(jù)庫盡量使用utf8存儲(修改/etc/my.cnf,在[mysqld]段加上default-character-set=utf8)
(已有的數(shù)據(jù)庫,先轉成UTF8格式)
2.PHP程序在查詢數(shù)據(jù)庫之前,執(zhí)行mysql_query(“set names xxxx”);其中xxxx是你網(wǎng)頁的編碼(charset=xxxx),如果網(wǎng)頁中charset=utf8,則xxxx=utf8,如果網(wǎng)頁中 charset=gb2312,則xxxx=gb2312,如果網(wǎng)頁中的charset=ipaddr,則xxxx=ipaddr (開個玩笑,沒這編碼)幾乎所有WEB程序,都有一段連接數(shù)據(jù)庫的公共代碼,放在一個文件里,在這文件里,加入mysql_query(“set names”)就可以了。3.PHPMyAdmin不需要做改動。
4.需要注意的是,為保證網(wǎng)頁實際編碼(Windows保存對話框里的編碼)和他聲明的編碼(charset=?)是一致的,請用DW之類的工具做網(wǎng)頁。

[ 本帖最后由 hh11 于 2007-3-9 08:42 編輯 ]

論壇徽章:
0
7 [報告]
發(fā)表于 2007-03-09 09:44 |只看該作者
原帖由 hsgzr 于 2007-2-27 09:24 發(fā)表
我將my.ini文件 數(shù)據(jù)庫 表等字符集設為latin1 gb2312 gbk utf8 等均有不能正常顯示的現(xiàn)象


樓上你沒看到以上這段話嗎?
按你的說法你試了以上代碼了嗎?結果如何呀?我要解決的問題你沒看明白嗎?我不是普通的漢字亂碼問題,我要的不是應該、可能的解決方案,我要的是切實解決方案

論壇徽章:
0
8 [報告]
發(fā)表于 2007-03-10 22:25 |只看該作者
原帖由 hsgzr 于 2007-3-9 09:44 發(fā)表

樓上你沒看到以上這段話嗎?
按你的說法你試了以上代碼了嗎?結果如何呀?我要解決的問題你沒看明白嗎?我不是普通的漢字亂碼問題,我要的不是應該、可能的解決方案,我要的是切實解決方案


想要有確切的方案就考慮付費吧

論壇徽章:
0
9 [報告]
發(fā)表于 2007-03-11 13:04 |只看該作者
先恢復數(shù)據(jù)庫為正常狀態(tài),然后導出數(shù)據(jù)為bak.sql。

file bak.sql

然后將此文件轉碼為 utf8 存儲。(可用editplus 以 file bak.sql 得到的正確編碼打開,確認沒有亂碼,再以 utf8 格式另存為 bak-utf.sql). 當然你用其他工具轉碼也沒問題。

假如"本來使用latin1字符集 插入中文 顯示中文數(shù)據(jù)庫均沒問題," 這句話屬實,則bak.sql 為laint1 即 ISO-8859-1 編碼。

新建一個以 utf8 編碼的庫dbutf,修改 my.cnf 里 [mysqld] 與 [mysql] 兩字段里 default-character-set=UTF-8

重啟mysqld.

導回轉換成utf8的bak-utf.sql :
mysql -D dbutf <bak-utf.sql

如果使用此db的原程序不變,則 將 my.cnf 里[mysql] 段默認字符設置注銷,或者 恢復原狀。

[ 本帖最后由 likuku 于 2007-3-11 14:52 編輯 ]

論壇徽章:
0
10 [報告]
發(fā)表于 2007-03-12 17:47 |只看該作者
樓上謝謝你的解答 但沒能解決視圖中漢字亂碼問題,
我的數(shù)據(jù)庫只是在視圖中的if后漢字和where aa='漢字' 中的漢字出現(xiàn)亂碼,其它任何地方都沒有亂碼。還要麻煩你在試試給個解決方案。
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復

  

北京盛拓優(yōu)訊信息技術有限公司. 版權所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關心和支持過ChinaUnix的朋友們 轉載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP