自从对php和mysql有了一定的了解之后,我就对公司里庞大的Excel数据 库虎视眈眈,想偷偷地"共享"这被保密的商业数据,一边琢磨着怎么搞到手,一边考虑如何转化成mysql数据库,去了很多php站点论坛 请教高手 ,都没有一个结果,某天突发想象,为何不试试这种方法呢?结果也真行,一切Ok,下面我就把我的心得与大家完全共享(可能你有更好的方法) & x7 a/ Z; P5 |8 B y7 Z. ~
1.先介绍一下这个Excel数据库的结构,且命名为E.xls,字段有4个(40个也一样搞掂),字段名为a,b,c,d,接着对jm.xls做分解: . q' [$ T- N: G2 p! w, M* a/ E
1)选中字段a中的全部记录,选择"复制"
2)新建一个Excel数据库文件,把复制过来的数据粘贴在一个空白的字段(通常是A)下,保证其他字段空白,保存为a.xls " ?" ~, R7 ]3 P2 L
3)另存a.xls为a.txt(格式为"文本 文件(制表符分隔)")
4)E.xls中其他3个字段的数据按1到3步骤继续生成b.txt,c.txt和d.txt。
2.完成上述步骤后,你已经完成了大部分的工作,下面就由php和mysql来完成,很简单: 6 A4 /9 X' D& w3 Y9 c5 q
1)要把数据放在mysql中,必须建立一个mysql数据库文件名为dbname(与php代码中的dbname要一致),包括表tbname(与 php代码中的tbname要一致),4个字段inc char(100),adds char(100),pri char(100),tel char(100),大小要根据Excel中字段大小做调整,否则可能出现部分值丢失。 * R, Q# q$ b, w) Z- R! ~& z4 H# ?
2)再编写php代码,是最主要的,代码如下: / h5 D0 n6 M/ [
------txt2mysql.php---------
<?
$inc=file("a.txt"); 2 l9 [; i& l6 V- ?) z) E
$adds=file("b.txt");
$pri=file("c.txt");
$tel=file("d.txt"); & ^. b: e. {7 h% N/ k
$i=0;
mysql_connect(); _( B8 ~! H( B8 S
while (strlen($inc[$i])>0)
{ / A% N. B+ z3 ~
$sql="insert into tbname values ('$inc[$i]','$adds[$i]','$pri[$i]','$tel[$i]')"; / W# ]2 T3 I7 n1 h; d+ P7 T
$do=mysql_db_query("dbname",$sql);
$i=$i+1; ! R# r8 `# W, Y( x, j3 S
echo '<br>'; : S4 j9 X* V9 n0 v3 c$ N
} + q% }7 j1 Q+ m- W4 u0 f
$s="select * from tbname"; / S e! b8 e) x5 n2 `
$gg=mysql_db_query("dbname",$s);
$n=mysql_num_rows($gg); - ]) ~" P' u# Z0 ~0 F) [8 F2 R
mysql_close();
echo '<br>';
echo "共添加了".$n."个记录";
?> / T& n( W% O& k1 O% D: y
注意:a.txt,b.txt,c.txt,d.txt和txt2mysql.php要在同一个目录