2011-04-22 40 views

回答

2

是的,這確實有問題。即,您只更改文件名 - 這不足以自動將您的數據轉換爲適當的數據格式(換句話說,「任何其他名稱的玫瑰都會聞到甜味」)。請注意,Excel實際上告訴你這個,在錯誤信息中。

SELECT INTO OUTFILE不支持Excel文檔。您需要a)導出爲CSV,然後進行轉換,或b)獲得具有此導出功能的工具(例如phpMyAdmin或Navicat)。

2

可以設置任何文件擴展名。實際上,xls是Excel嘗試讀取的二進制OLE文件。 SELECT INTO OUTFILE生成文本文件,嘗試使用CSV或TXT擴展名存儲文件。在這種情況下,Excel將正確打開文件。

3

正如Piskvor和Devart所說的,僅僅給文件擴展名爲.xls實際上並不是一個Excel文件....生成的文件內容仍然只是一個製表符分隔的值文件,因爲您的SQL語句明確

FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n' 

如果你想從你的PHP腳本,在這裏你還可以(例如)格式化要導出的數據中創建一個真正的 Excel文件,那麼你需要使用一個庫例如我自己的PHPExcel,或this thread中列出的其中一個。

相關問題