如何将dedecms编码转换:gbk互转UTF-8
首先要导入的肯定是栏目了
关于数据库结构 帝国官方有一个很详细的手册 我在之前的文章中有发布 ,而可怜的dede 只能在一些blog的文章中找到,感谢整理这些资料的博主们,不过还不是很方便,我觉着dede官方应该大改进了
帝国cms 栏目相关数据表 mlf_enewsclass (注意表的前缀)
dedecms 栏目相关数据表dede_arctype
这里就不对字段进行解释了 直接上sql了
把帝国数据库中mlf_enewsclass 这张表导入到dede数据库中方便操作
这条数据执行完了之后后台栏目已经有数据了
insert into dede_arctype (id,reid,typename,picname,sortrank,typedir,description,keywords) select classid,bclassid,
classname,classimg,myorder,classpath,intro,classpagekey from mlf_enewsclass
update `dede_arctype` set `issend`=1
update `dede_arctype` set `isdefault`=1
DedeTag Engine Create File False以下几条sql必须执行,要不然会出现 错误
-----------------------------------------------------------------------------
update `dede_arctype` set `namerule`="{typedir}/{Y}/{M}{D}/{aid}html"
update `dede_arctype` set `namerule2`="{typedir}/list_{tid}_{page}html"
------------------------------------------------------------------------------
update `dede_arctype` set `typedir`=CONCAT('{cmspath}/',typedir)
update `dede_arctype` set `templist`="{style}/list_articlehtm"
update `dede_arctype` set `temparticle`="{style}/article_articlehtm "
update `dede_arctype` set `tempindex`="{style}/index_articlehtm"
update dede_arctype da,mlf_enewsclassadd me set dacontent=meclasstext,daseotitle=mefpagetitle where daid=meclassid(注意)
这样 栏目列表成功转换,后台可生成
下来开始整合文章
首先 先来分析文章数据库结构
dede文章相关的有3张数据表,分别是dede_archives ,dede_addonarticle,dede_arctiny
帝国文章相关的数据表: mlf_ecms_news,mlf_ecms_news_data_1(可能数据表有所不同,不过结构区别都不大)
导入文章
insert into `dede_archives` (id,typeid,sortrank,click,title,litpic,filename,pubdate,senddate,description,keywords) select id,classid,truetime,onclick,title,titlepic,filename,newstime,lastdotime,smalltext,keyboard from mlf_ecms_news
导入文章来源作者
update `dede_archives` da,mlf_ecms_news_data_1 men set dasource=menbefrom,dawriter=menwriter where daid=menid
导入文章body(内容)
insert into dede_addonarticle (aid,typeid,body) select id,classid,newstext from mlf_ecms_news_data_1 men
现在后台已经有了文章
不过发现了个问题,分类中显示的文档数量为0
经过查资料,摸索 发现还需要操作一个数据表 dede_arctiny后台统计文档数量操作的是这个数据表
insert into `dede_arctiny` (id,typeid,channel,senddate,sortrank,mid) select id,typeid,channel,senddate,sortrank,mid from dede_archives
执行完毕之后发现最下级的栏目已经正常显示文档数量,但是顶级栏目依然是0,查看相关资料才发现dede一直是这样,这也算dede的一个bug吧
你好:
数据字典(Datadictionary)是一种用户可以访问的记录数据库和应用程序元数据的目录。主动数据字典是指在对数据库或应用程序结构进行修改时,其内容可以由DBMS自动更新的数据字典。被动数据字典是指修改时必须手工更新其内容的数据字典。
1数据字典是一个预留空间,一个数据库,这是用来储存信息数据库本身。
1数据字典可能包含的信息,例如:
数据库设计资料
储存的SQL程序
用户权限
用户统计
数据库的过程中的信息
数据库增长统计
数据库性能统计
数据字典则是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果
数据字典通常包括数据项\数据结构\数据流\数据存储和处理过程五个部分
数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合
组成
1数据流
2数据流分量,即数据元素
3数据存储
4处理
数据字典
数据库的重要部分是数据字典。它存放有数据库所用的有关信息,对用户来说是一组只读的表。数据字典内容包括:
数据库中所有模式对象的信息,如表、视图、簇、及索引等。
分配多少空间,当前使用了多少空间等。
列的缺省值。
约束信息的完整性。
用户的名字。
用户及角色被授予的权限。
用户访问或使用的审计信息。
其它产生的数据库信息。
数据库数据字典是一组表和视图结构。它们存放在SYSTEM表空间中。
数据库数据字典不仅是每个数据库的中心。而且对每个用户也是非常重要的信息。用户可以用SQL语句访问数据库数据字典。
关于数据的信息集合,是一种用户可以访问的记录数据库和应用程序元数据的目录,是对数据库内表信息的物理与逻辑的说明
首先登陆dedecms网站后台,使用系统菜单下的数据库备份/还原功能,将网站的数据备份,记住要备份数据表结构,然后使用FTP工具将备份好的数据文件下载到您的电脑上。
备份的文件中有tables_struct_xxx这样一个文件,用dreamweaver或EditPlus打开这个文件,使用查找与替换命令,将CHARSET=gbk替换为CHARSET=utf8,然后要保存。
打开准备的转码软件,将第所备份的文件(包括上面修改过的文件),将GBK转换为UTF-8格式。
当然,转换好的文件一定是在一个新的文件夹里面,以便区分原来的GBK的文件。
至此这一步,我们就将数据库文件由GBK格式成功的转换为了UTF-8格式。
然后重新安装新的UTF-8编码的dedecms程序,将转码后的数据库备份文件上传覆盖到对应的数据库备份文件夹,接下来进登陆网站后台,打开系统菜单,使用备份/还原数据库命令,选择数据还原,勾选所有文件,执行还原命令我们就完整的将DedeCMSGBK版本转换成了DedeCMSUTF-8版本了。
如需UTF-8转GBK,将上面的软件转换过程中软件里设置成UTF-8转GB
希望能帮到你
1、一般在“表结构”这个词,在计算机技术的数据库管理与编程方面用得比较多。2、这个词经常会在支持SQL语系控制的数库管理系统中用到,比如SQL Server、Oracle等,甚至ACCESS、MYSQL等里面也会用到。
3、数据库一般以:库、表、字段,这几个层级来组织数据。
一个库就象一个存储公司的仓库一样。
每个库可能有很多的表,这就象仓库里有很多的货架一样。
每个表可能有很多的字段,这就象货架上有很多的列,各列用于存放不同的物品一样。
4、接继上面的比方,表的结构,就象是对货架在哪儿,每个列叫什么,每个列有多宽,每个列可以放哪类的商品……等描述一样。
5、以技术性语言来说明的话,表结构就是定义数据库中,一个表的字段、类型、主键、外键、索引等等,这些基本的属性组成了数据库的表结构。
很多朋友习惯了使用织梦DedeCMS建站后,偶尔会遇到一些不常见的奇怪问题出现。例如提示“无法获得主键,因此无法进行后续操作”的错误情况。那该怎么办呢?其实解决这个问题,最有效的两个办法就是: 方法1、首先检查数据库是否还能写入,例如有的数据满了,一般会被只读,就不能写入了。还有一种情况就是就是如果你是新更换的服务器,要就要检查下数据库权限设置是否正确。 方法2、使用phpmyadmin修复数据表里的archives这个表。如果你使用的是自己的服务器,可以直接用phpmyadmin操作->修复archives表;如果是买的数据库空间,则没有自己修复数据库表结构的权限,则可以先把数据库备份下载到本地,然后导入本地建立的数据库,用phpmyadmin操作->修复archives表即可。 具体如何使用phpMyAdmin修复数据表的方法: 1、我们这里就演示如何数据表cdb_activityapplies为例,首先登录phpMyAdmin,进入 phpMyAdmin数据列表页面; 2、选中所需修复的数据表前的方框; 3、页面下方“选中项”下拉选择“修复表”就完事了。 怎么样,大家学会了没有呢?
1 dedecms网站GBK与UTF
在帮别人修改织梦模板的时候,别人的要求是: 在现有的织梦做网站上 增加一个多语言界面,就是在现有的中文界面上新增 英文,日文 和韩文。
第一个当然想得就是在织梦后台新增几个这样的 栏目。然后只要将模板做成其他的语言就可以调用了。
但是也遇到了一个问题就是它现有网站的织梦是gbk的。
这种gbk是一种中文编码,若想出现其他语言文字就必须转化成UTF-8的,所以自己就再网上整理了一下 找到了一个比较不错也适合自己的转换方式:
1 备份网站的所有数据
这一部分是很重要的 ,尤其是数据库的备份。先织梦后台备份,然后再整站进行备份
2导出数据库文件并转换。
这一部分需要使用到PHPMyadmin 我们在MyAdmin 找到网站的数据库名,默认的数据表前缀为dede_ 全选这些数据表,选择导出。将导出的。sql文件在本地 用专门的编辑工具打开(可以使用DW或者是Notepad++等)
我们查找CHARSET=gbk 全部替换为CHARSET=utf8
查找gb2312全部替换成utf8
然后保存。
3模板文件的转换
用DW打开模板文件,选择修改——页面属性——标题/编码 :
织梦gbk转utf8
我们只要将编码选择为 UTF-8即可,下面还有一个选择就是 是否包含Unicode签名(BOM) 这个不要选择 否则在使用织梦模板插入include时会出错
若发现有的文字出现了乱码 自己手动更改即可!
将全部的模板文章转换问UTF-8格式的!
文件基本上就转换好了!
4安装UTF-8格式的织梦安装包
你使用的是织梦哪个版本的织梦就安装相应的UTF-8格式的安装包,安装好之后使用MyAdmin 将这个新数据库名中格的表删除,并将转换好的。ssql文件导入即可,将转换好的模板文件覆盖。
2 织梦系统怎么把utf编码转成gbk
首先登陆dedecms网站后台,使用系统菜单下的数据库备份/还原功能,将网站的数据备份,记住要备份数据表结构,然后使用FTP工具将备份好的数据文件下载到您的电脑上。
备份的文件中有tables_struct_xxx这样一个文件,用dreamweaver或EditPlus打开这个文件,使用查找与替换命令,将CHARSET=gbk替换为CHARSET=utf8,然后要保存。打开准备的转码软件,将第所备份的文件(包括上面修改过的文件),将GBK转换为UTF-8格式。当然,转换好的文件一定是在一个新的文件夹里面,以便区分原来的GBK的文件。
至此这一步,就将数据库文件由GBK格式成功的转换为了UTF-8格式。
3 DEDEcms,GBK和UTF8版本互相转换有什么方法
当前安装版本为:dedecms v57 utf8,目标将网站由UTf8版本转换为GBK版。
2写在转换之前:要转换dede系统的版本,实际上是编码的转换的问题,要将mysqls数据从utf8转换为gbk编码,将模板文件的编码也要转换为GBK模式。在本文中两个核心工具,帝国备份王和Editplus 编辑器。
用ebak2008工具的备份/恢复功能,巧妙dede数据库utf-8编码的无错转换为gbk编码格式。站点文件的转换就用Editplus 编辑器。
END二数据的备份1在转换之前,将dede做整站备份,备份内容包括mysql数据库,dede站点文件,如果网站容量非常大的话,可以登录空间管理后台将整个网站进行打包,然后下载。备份的目的就是了防止转换失败后还有退路。
登录dede后台,选择“系统 ”中 “数据库备份/还原 ”备份dede数据库。2备份完毕,请登录ftp下载到本地电脑保存。
Dede备份数据存储位置:/data/backupdataEND三数据库编码转换1解压缩ebak2008,将ebak2008文件夹上传到网站空间的根目录。用帝国备份王(ebak2008)反向操作,强制转换dedecms v57 utf8版本的mysql数据编码为gbk。
2打开帝国备份王(ebak2008)工具(地址为:原域名/ebak2008),登陆3在登陆后的帝国备份王界面,点击“备份数据”,4备份数据界面,选择要备份的数据库,请注意操作,别选错了。5非常重要!虚拟主机安装的dede系统是utf8版,在备份的时候不能选择 “utf8编码进行备份 ”。
在这里要反向操作(如果是utf8就选gbk,如果是gbk就选utf8)。备份时请特别注意:选择数据库编码为gbk,不能选择其它方式,否则在转换后会出现乱码。
数据存储目录命名为:date_gbk_20150618160956。一般用默认的就可以了。
点击,屏幕最下方的 开始备份 ,等待完成操作!END四将gbk格式的dede数据库备份恢复到系统登陆主机ftp后台,将原来的dedecms的目录dede,改为deded_utf8_bak上传DedeCMS-V57-GBK-SP1tar,到主机后台进行解压缩,将其中的uploads文件夹改为dede,移动到public_html/目录中,此操作可以节省大量上传的时间接着就可以重新安装dede系统了,安装过程不作演示在安装DedeCMS-V57-GBK-SP1版时,按默认安装即可。安装完毕后,进后台将插件之类的也重新安装好然后登录ebak2008数据库备份工具,选择“数据恢复”,恢复第二步骤中将utf8编码强制转换为gbk格式的数据库(date_gbk_20150618160956)。
帝国备份王(ebak2008)恢复数据仅需要50秒左右,速度相当的快。恢复数据后,请登录dede管理后台,重新生成一下网页。
检查首页无乱码,织梦网站管理系统(dedecms)utf8成功转换gbk。进入网站管理后台,检查数据库表,Mysql数据表无乱码:转换成功后的小错误,由于dede默认的utf8和gbk版本的差别,在转换成功后,“图文资讯”和“首页幻灯片”丢失,丢失的重新上传一下就OK!整个过程无报错,显示正常再次进入主机后台找到dede_utf8_bak目录下的uploads下的alimg目录(这个目录就是首页和上传的存放的位置),把这个目录加入到剪贴板,再进入dede目录下的uploads,复制剪贴板的文件到这里,这样就恢复正常了本站使用的是dede默认的模板,所以在转换的时候没有改动dede的模板文件,如果你的网站对DEDE的一些文件没有改动,直接按照我的方法就可以成功转换。
如果有改动的文件,请将你改动的文件转换为gbk编码。用Editplus 编辑器将站点文件中的utf8转换为gbk编码。
重点是dede模板文件编码的转换,细心的用Editplus 编辑器修改,完毕后,上传覆盖即可。
4 dedecms的UTF
我看了下他的模板,这个改动量就太大了。你要把模板里的这些文件依次打开,并将<meta ; charset=utf-8" />;改成<meta ; charset=gb2312" />;。而且他的plus里也要改。整理起来很麻烦。
0条评论