excel導入mysqlphp
只要保持編碼一致
就不會出現亂碼。
excel導入到mysql過程:
excel編碼-->程序編碼-->資料庫編碼
具體的你可以參閱PHP相關手冊或工具書中
編碼-字元集
相關章節,進行正確的編碼轉換
即可
程序編碼-->資料庫編碼
過程中
具體的方法一般在
連接資料庫後執行SQL語句:
SET
NAMES
'utf8';
或
SET
NAMES
'gbk';
即可解決
② php 將excel導入MySQL 資料庫後,如何使得它以文本形式顯示
EXCEL數字按文本處理時,只能是15位以下(含15位),超過15位的應在EXCEL中錄入時在前面加撇號(『),否則超過15位的按0處理,至於導入mysql中按文本顯示,只要你在SQL中的欄位定義為文本就可以了
③ 如何使用php實現將數據從excel表導入到mysql中
把excel 改為 cvs文件
<?
//連接資料庫文件
$connect=mysql_connect("localhost","admin","admin") or die("鏈接資料庫失敗!");
//連接資料庫(test)
mysql_select_db("testcg",$connect) or die (mysql_error());
$temp=file("test.csv");//連接EXCEL文件,格式為了.csv
for ($i=0;$i <count($temp);$i++)
{
$string=explode(",",$temp[$i]);//通過循環得到EXCEL文件中每行記錄的值
//將EXCEL文件中每行記錄的值插入到資料庫中
$q="insert into ceshi (name,num,dom) values('$string[0]','$string[1]','$string[2]');";
mysql_query($q) or die (mysql_error());
if (!mysql_error());
{
echo " 成功導入數據!";
}
echo $string[4]."\n";
unset($string);
}
?>
④ 如何將excel內的數據導入mysql資料庫
F1:生成TXT文件
1.將文件另存為「文本文件(製表符分割)(*.txt)」
2.然後進入命令提示符里使用命令
load data local infile data.txt into table exceltomysql fields terminated by '\t';
數據從MySql到Excel的轉化,其過程其實還是藉助那個「製表符分割」的文本文件。
將如要將這個表中的男生信息導入到Excel中,可以這樣。
select * into outfile data.txt' from exceltomysql where xingbie="m";
你可以打開Excel,然後選擇「數據」->「導入外部數據」->「導入數據」,選中 man.txt,一路確定就行了。
F2: 先利用excel生成sql語句,然後再到mysql中運行,這種方法適用於excel表格導入到各類sql資料庫:
(1)、增加一列(假設是D列)
(2)、在第一行的D列,就是D1中輸入公式:
=CONCATENATE("insert into table (col1,col2,col3) values ('",A1,"','",B1,"','",C1,"');")
如果有時間的話 '", text(A1,"yyyy-mm-dd hh:mm:ss"),"'
(3)、將D1的公式復制到所有行的D列(就是用滑鼠點住D1單元格的右下角一直拖拽下去啦)
(4)、把D列復制到一個純文本文件中,假設為sql.txt
把sql.txt放到資料庫中運行即可,你可以用命令行導入,也可以用phpadmin運行。
⑤ 如何通過PHP將excel的數據導入MySQL中
准備工作: 下載PHP-ExcelReader,下載後用到\phpExcelReader\Excel目錄下的oleread.inc和reader.php兩個文件,並將reader.php文件打開後require_once 'Spreadsheet/Excel/Reader/OLERead.php';屏蔽掉,增加為require_once 'oleread.inc'; 然後直接將這兩個文件復制到伺服器下WAMP,直接復制到WWW目錄下,再將所需要的excel文件考進來我的文件是classify.xls,然後需要一個調用reader.php的文件,源代碼如下:
ExcelToMysql.php
<?php
require_once 'reader.php';
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('gbk');
$data->read('classify.xls'); //」classify.xls」是指要導入到mysql中的excel文件
@ $db = mysql_connect("localhost", "root", "") or
die("Could not connect to database.");//連接資料庫
mysql_query("set names 'gbk'");//輸出中文
mysql_select_db('japlearn'); //選擇資料庫
error_reporting(E_ALL ^ E_NOTICE);
for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {
//以下注釋的for循環列印excel表數據
//以下代碼是將excel表數據【6個欄位】插入到mysql中,根據你的excel表欄位的多少,改寫以下代碼吧!
$sql = "INSERT INTO classify VALUES('".
$data->sheets[0]['cells'][$i][1]."','".
$data->sheets[0]['cells'][$i][2]."','".
$data->sheets[0]['cells'][$i][3]."','".
$data->sheets[0]['cells'][$i][4]."','".$data->sheets[0]['cells'][$i][5]."','".$data->sheets[0]['cells'][$i][6]."')";
echo $sql.'<br />';
$res = mysql_query($sql);
}
?>
把上面代碼注釋的地方替換成自己配置好的數據,如資料庫配置等。運行本機測試地址實現導入。
⑥ php把excel導入到mysql資料庫 的代碼
1,在excel表每一行後加上=CONCATENATE("insertintotable(欄位1,欄位2,欄位n)values('",欄位1坐標,"','",欄位2坐標,"','",欄位n坐標,"');")
2,將這一列復制到文本文檔,以方便瀏覽和調試錯誤
3,使用運行sql的工具(我將他們都放到Navicat中創建查詢再運行就ok了)4,瀏覽資料庫,修改不合理的欄位及值
你把下面的這段粘到excel裡面對應的位置
=CONCATENATE("insertintokeywords(id,name,pwd)values('",坐標,"','",坐標,"','",坐標,"');")
按照你表格的排列對好,比如
最後把這一列復制到文本文檔,你會看到全是sql的插入語句;
最後用Navicat之類的工具執行這些語句就Ok了。
⑦ php中如何將execl的數據導入到資料庫中
1.使用PHP
Excel
Parser
Pro軟體,但是這個軟體為收費軟體;
2.可將EXCEL表保存為CSV格式,然後通過
phpmyadmin
或者SQLyog導入,SQLyog導入的方法為:
·將EXCEL表另存為CSV形式;
·打開SQLyog,對要導入的表格
右擊
,點擊「導入」-「導入使用載入本地CSV數據」;
·在彈出的對話框中,點擊「改變..」,把選擇「填寫excel友好值」,點擊確定;
·在「從文件導入」中選擇要導入的CSV文件路徑,點擊「導入」即可導入數據到表上;
3.一個比較笨的手工方法,就是先利用excel生成
sql語句
,然後再到mysql中運行,這種方法適用於
excel表格
導入到各類
sql資料庫
:
·假設你的表格有A、B、C三
列數據
,希望導入到你的資料庫中表格tablename,對應的欄位分別是col1、col2、col3
·在你的表格中增加一列,利用excel的公式自動生成sql語句,具體方法如下:
1)增加一列(假設是D列)
2)在第一行的D列,就是D1中輸入公式:
=CONCATENATE("insert
into
tablename
(col1,col2,col3)
values
(",A1,",",B1,",",C1,");")
3)此時D1已經生成了如下的sql語句:
insert
into
table
(col1,col2,col3)
values
('a','11','33');
4)將D1的公式復制到所有行的D列(就是用滑鼠點住D1單元格的右下角一直拖拽下去啦)
5)此時D列已經生成了所有的sql語句
6)把D列復制到一個純文本文件中,假設為sql.txt
·把sql.txt放到資料庫中運行即可,你可以用命令行導入,也可以用phpadmin運行。
⑧ 如何用thinkphp實現將excel數據導入到mysql中
把excel
改為
cvs文件
<?
//連接資料庫文件
$connect=mysql_connect("localhost","admin","admin")
or
die("鏈接資料庫失敗!");
//連接資料庫(test)
mysql_select_db("testcg",$connect)
or
die
(mysql_error());
$temp=file("test.csv");//連接EXCEL文件,格式為了.csv
for
($i=0;$i
<count($temp);$i++)
{
$string=explode(",",$temp[$i]);//通過循環得到EXCEL文件中每行記錄的值
//將EXCEL文件中每行記錄的值插入到資料庫中
$q="insert
into
ceshi
(name,num,dom)
values('$string[0]','$string[1]','$string[2]');";
mysql_query($q)
or
die
(mysql_error());
if
(!mysql_error());
{
echo
"
成功導入數據!";
}
echo
$string[4]."\n";
unset($string);
}
?>
⑨ 怎麼將excel表格數據導入到mysql資料庫
1.使用PHP
Excel
Parser
Pro軟體,但是這個軟體為收費軟體;
2.可將EXCEL表保存為CSV格式,然後通過phpmyadmin或者SQLyog導入,SQLyog導入的方法為:
·將EXCEL表另存為CSV形式;
·打開SQLyog,對要導入的表格右擊,點擊「導入」-「導入使用載入本地CSV數據」;
·在彈出的對話框中,點擊「改變..」,把選擇「填寫excel友好值」,點擊確定;
·在「從文件導入」中選擇要導入的CSV文件路徑,點擊「導入」即可導入數據到表上;
3.一個比較笨的手工方法,就是先利用excel生成sql語句,然後再到mysql中運行,這種方法適用於excel表格導入到各類sql資料庫:
·假設你的表格有A、B、C三列數據,希望導入到你的資料庫中表格tablename,對應的欄位分別是col1、col2、col3
·在你的表格中增加一列,利用excel的公式自動生成sql語句,具體方法如下:
1)增加一列(假設是D列)
2)在第一行的D列,就是D1中輸入公式:
=CONCATENATE("insert
into
tablename
(col1,col2,col3)
values
(",A1,",",B1,",",C1,");")
3)此時D1已經生成了如下的sql語句:
insert
into
table
(col1,col2,col3)
values
('a','11','33');
4)將D1的公式復制到所有行的D列(就是用滑鼠點住D1單元格的右下角一直拖拽下去啦)
5)此時D列已經生成了所有的sql語句
6)把D列復制到一個純文本文件中,假設為sql.txt
·把sql.txt放到資料庫中運行即可,你可以用命令行導入,也可以用phpadmin運行。
⑩ 如何通過PHP實現EXCEL與MYSQL之間的導入導出
1.先介紹一下這個Excel資料庫的結構,且命名為E.xls,欄位有4個(40個也一樣搞定),欄位名為a,b,c,d,接著對jm.xls做分解:
1)選中欄位a中的全部記錄,選擇"復制"
2)新建一個Excel資料庫文件,把復制過來的數據粘貼在一個空白的欄位(通常是A)下,保證其他欄位空白,保存為a.xls
3)另存a.xls為a.txt(格式為"文本文件(製表符分隔)")
4)E.xls中其他3個欄位的數據按1到3步驟繼續生成b.txt,c.txt和d.txt。
2.完成上述步驟後,你已經完成了大部分的工作,下面就由php和mysql來完成,很簡單:
1)要把數據放在mysql中,必須建立一個mysql資料庫文件名為dbname(與php代碼中的dbname要一致),包括表tbname(與php代碼中的tbname要一致),4個欄位inc char(100),adds char(100),pri char(100),tel char(100),大小要根據Excel中欄位大小做調整,否則可能出現部分值丟失。
2)再編寫php代碼,是最主要的,代碼如下:
------txt2mysql.php---------
<?
$inc=file("a.txt");
$adds=file("b.txt");
$pri=file("c.txt");
$tel=file("d.txt");
$i=0;
mysql_connect();
while (strlen($inc[$i])>0)
{
$sql="insert into tbname values ('$inc[$i]','$adds[$i]','$pri[$i]','$tel[$i]')";
$do=mysql_db_query("dbname",$sql);
$i=$i+1;
echo '<br>';
}
$s="select * from tbname";
$gg=mysql_db_query("dbname",$s);
$n=mysql_num_rows($gg);
mysql_close();
echo '<br>';
echo "共添加了".$n."個記錄";
?>
這種方法很簡單吧!我剛試了一下挺管用的。你稍微改一下,相信能完成!
關鍵在於,如何把excel 中的數據讀取出來,導入是很簡單的事。
分別 把相應的列 另存為,相應的txt。就能得到!然後 以數組的方式讀取。