找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 108|回复: 0

[cms教程] 织梦dedecms excel导入mysql数据库方法

[复制链接]

该用户从未签到

发表于 2020-6-23 11:14:42 | 显示全部楼层 |阅读模式

您需要 登录 才可以下载或查看,没有账号?立即注册

×
网上的方法不少,能用的不多,相信以下方法是最靠谱的,值得记录.
         
        一,先进phpmyadmin数据库管理,导出空表,表的格式为csv,然后用记事本打开,注意要统一编码,数据库是utf-8,就把csv转为utf-8编码,否则,中文没法正常导入.
         
        二,excel中的数据列,调整一下顺序,与数据库中的字段顺序相同.方便操作.
         
        三,excel中的列数.与MySQL中的字段数要一致.怎么保持一致,方法一,如果mysql中有些字段本身就是空值,为了方便导入excel,可以先删除这个字段,导入成功后,再重新建立这些字段就是.方法二,或在excel中插入列,给特定的值,好像不方便给空值吧?否则,复制到csv中后,会出现大段的空白,导入时,可能会提示 CSV 输入的第 1 行字段数有错。.
         
        四,excel表格调整完成后,把要导入的行列值,全部复制到事先建立好的csv中,默认每个字段值是以特殊的空格分隔的吧?建议批量替换成英文逗号.然后保存,
         
         
         
        五,进mysql,找到要导入的表,点击上面的导入,然后选择csv格式的文件,字段分隔符选择逗号,如上图,导入即可.
         
        六,最后重新建立删除过的字段
         
         ==================================================================
         
        以上是以织梦cms为例.即先把数据导入到附加表中.但是,织梦系统,还要求同时更新文章主表archives及精简表arctiny,更新方法为.
         
        要更新精简表, 可以在include\extend.func.PHP中写一个函数.
         
        function addon_to_arctiny(){
         
         global $dsql;
         
        for ($x=5; $x
         
         $row2= $dsql->GetOne("SELECT jiancheng FROM `dede_addon18` where  aid='$x'");
         
        //查询分店的简称
         
         
         //die(mysql_error());
         
        //跟踪错误
         
         //print_r($row2);exit;
         
         $row3=$row2['jiancheng',;
         
          
         
          //$query="UPDATE `dede_archives` SET title='$row3' where  id='$x'";//单独对一个字段进行修改的语句示例
         
          $query = "INSERT INTO `dede_arctiny` (id,typeid,typeid2,channel,arcrank,sortrank,senddate,mid)
         
          Values('$x',2,0]18,0]1455680144,1455671192,1)";
         
          
         
          $dsql->ExecuteNoneQuery($query);
         
          //die(mysql_error());
         
        }
         
        }
         
        然后在模板中 这样就可以运行这个函数了.
         
        {dede:global.cfg_webname runphp='yes' function="addon_to_arctiny()"/}
         
        插入主表方法也一样,如下
         
        //附加表数据导入主表
         
        function addon_to_archives(){
         
         global $dsql;
         
        for ($x=5; $x
         
         $row2= $dsql->GetOne("SELECT jiancheng FROM `dede_addon18` where  aid='$x'");
         
          
         
         //die(mysql_error());
        //print_r($row2);exit;
         
         $row3=$row2['jiancheng',;
         
           $query = "INSERT INTO `dede_archives` (id,typeid,typeid2,
         
           sortrank,flag,ismake,channel,arcrank,click,money,title,
         
           shorttitle,color]writer,source,litpic,pubdate,senddate,mid,keywords,
         
           lastpost,scores,goodpost,badpost,voteid,notpost,description,filename,
         
           dutyadmin,tackid,mtype,weight
         
           ) Values('$x',
         
           '2',
         
           '0',
         
          1455670875,
         
           '',
         
           1,18,0,500]0]'$row3',
         
           '','','admin','none','',1455670875,1455670875,1,'',
         
           0,0]0,0]0,0]'','',1,0,500]'$x'
         
           )";
          
         
          //$query="UPDATE `dede_archives` SET title='$row3' where  id='$x'";//单独对标题进行更新调整
         
         
          $dsql->ExecuteNoneQuery($query);
         
        }
         
        }
回复

使用道具 举报

网站地图|页面地图|文字地图|Archiver|手机版|小黑屋|找资源 |网站地图

GMT+8, 2024-10-7 18:24

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表