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。就能得到!然后 以数组的方式读取。