① SQL表列名如何在導出到Excel後顯示出中文
欄位+空格+「別名」
例:
select aaaa 「第一列」,bbbb 「第二列」 from cccc
② mysql資料庫怎樣設置中文編碼
解決方式
在導出mysql sql執行文件的時候,指定一下編碼格式:
復制代碼代碼如下:
mysqlmp -uroot -p --default-character-set=utf8 mo(dbname) > E://xxxx.sql
導入的時候OK了
執行如下
復制代碼代碼如下:
mysql -u root -p --default-character-set=utf8
use dbname
source /root/newsdata.sql
③ oracle數據導出spool方式,中文出現亂碼是什麼原因
一般來說,oracle數據導出spool方式,中文出現亂碼,這情況是因為資料庫伺服器和客戶端字元集不匹配,執行sqlplus的機器就是客戶端,伺服器和客戶端也可能是一台機器,執行sqlplus之前要先設置客戶端的字元集,在linux上:export NLS_LANG=.......
在windows上set NLS_LANG查詢資料庫字元集:select property_value from database_properties where property_name like 'NLS_CHAR%';
1、比如查詢結果是:ZHS16GBK
那你在sqlplus之前要設置:export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
然後再登錄sqlplus用spool生成數據
檢查下你導出時候的環境變數,導入時的環境變數
2、比如導出時NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
導入時NLS_LANG沒有設置,或者設置為其他字元集,則導入的庫內漢字就有可能變成亂碼。
解決方法,連接資料庫的時候設置正確字元集即可。
④ 資料庫中怎麼樣使查詢結果的列名為對應中文
1、創建測試表,create table test_student(stu_id number, class_id number);
⑤ 我用navicat連接Oracle資料庫,導出來表的注釋是中文的情況下是亂碼,客戶端的字元集怎麼修改
資料庫端如果要正常顯示中文,一般都是zh16gbk,可以嘗試一下。
⑥ asp導出access數據到excel時如何把原字母欄位名改成中文的
經親身實踐,對樓上稍作一個單詞修改,就OK了。以下是全部
原代碼部分
-------------------------------------------
For each x in rstData.fields
strLine = strLine & x.name & chr(9)
next
------------------------------------------
替換為如下部分
-----------------------------------------
dim aa
for each x in rstData.Fields
aa=""
select case x.name
case "name"
aa="姓名"
case "date"
aa="日期"
case "備注"
aa="備注"
case "張三"
aa="章三"
......
end select
strLine = strLine &aa& chr(9)
next
----------------------------------------
注意:所有表的列名都必須重新定義
⑦ PHP從資料庫導出數據時,怎麼修改導出的字元編碼,讓導出的漢字不會有出現亂碼
導出前 mysql_query("set names utf8");
當然,實際情況可能更復雜,還得看資料庫本身的編碼
建議看mysql 的 系統變數
mysql> show variables like "%charset%";
⑧ 從資料庫導出到excel表格時怎樣修改excel表格的日期格式
直接右擊單元格--屬性,然後更改成你需要的日期格式。
但是經常會碰到需要雙擊一下,才更改成新的日期格式。
這個問題也可以解決,如果你碰到類似的問題,也可以解決。
⑨ 導出的MYSQL資料庫是亂碼還可以變回中文嗎
如果是在WINDOWS環境下,可以用如下代碼試試:
<?php
ob_start();
$filename = dirname(__FILE__)."\words.xls";$cols=array("A","B","C","D","E","F"); //EXCEL里的列$rows=1000; //每個sheet最多處理的行數
$conn=mysql_connect("localhost","root","");mysql_select_db("db01");
mysql_query("set names 'utf8'");
function replace_str($str="",$replace=" "){
$tmp=$str;
while(true)
{
$len=strlen($tmp);
$tmp=str_replace($replace.$replace,$replace,$tmp);if(strlen($tmp)==$len) return $tmp;
}
}
$excel_app = new COM("Excel.application",null,CP_UTF8) or Die ("Did not connect"); //CP_UTF8 是關鍵$Workbook = $excel_app->Workbooks->Open("$filename") or Die("Did not open $filename $Workbook");for($b=1;$b<=3;$b++)
{
$sheet='sheet'.$b; //要打開的sheet 的名稱$Worksheet = $Workbook->Worksheets($sheet);$Worksheet->activate;
printf("%s,正在處理:%s<br>",date("H:i:s"),$sheet);$space_lines=0; //空行的數量,初始值為0
for($j=1;$j<=$rows;$j++)
{
$Data="";
for($i=0;$i<6;$i++)
{
$excel_cell = $Worksheet->Range($cols[$i].$j);$excel_cell->activate;
$excel_result = $excel_cell->value;
//壓縮連續空格
$Data[]= replace_str($excel_result);//某一列的數據unset($excel_result);
}
if($Data[0]!="") //如果第一列不為空,即有內容,執行插入資料庫操作{
$sql=sprintf("insert into qlibs(a,b,c,d,e,f) values ('%s')",implode("','",$Data));mysql_query($sql) or die (mysql_error()."\n".$sql);printf("process:data:%s<br>",$sql);
}
else {
$space_lines++; //否則為空行,空行數加1
}
printf("%s,process:%s,row:%s,space_lines:%s<br>\n",date("H:i:s"),$sheet,$j,$space_lines);ob_flush();
if($space_lines>10) //連續10行以上空行,認為以下再沒有數據,提前結束本sheet的處理{
$space_lines=0; //空行數量置為0
$j=$rows; // 行數直接設置為最大處理行數
}
}
}
ob_end_flush();
#To close all instances of excel:
$Workbook->Close;
unset($Worksheet);
unset($Workbook);
$excel_app->Workbooks->Close();
$excel_app->Quit();
unset($excel_app);
?>
⑩ 如何處理導出的數據中文顯示亂碼問題
首先要檢查資料庫裡面是否是
亂碼
,如果不是在看資料庫的編碼和你設置的編碼是否一致,不一致也會產生讀取時亂碼。
如果都沒問題用的是servlet應用的話可以寫個過濾器
亂碼問題一般都是這樣解決的