2022-10-09 10:40:43 - 米境通
使用opencart比较早的朋友应该用的都是比较老版本的opencart系统,随着时代的变化,为了让网站能够有更大的数据承受能力,优化用户体验,opencart的版本也在不断的...
文章目录[+]
使用opencart比较早的朋友应该用的都是比较老版本的opencart系统,随着时代的变化,为了让网站能够有更大的数据承受能力,优化用户体验,opencart的版本也在不断的更新,
很多老用户都想让自己的网站升级到opencart的最新版本,升级版本其实最和谐的就是搬迁原网站的数据,但是对于opencart最新版本数据表的一些变化却又不是很清楚,不知道改如何将旧版的opencart数
据搬迁到最新版本的opencart系统中,下面就为大家示范一次如何将opencart1.5.6.4版本数据搬迁到opencart3.0.3.2版本中。
它的整理逻辑流程是:让新版本opencart系统同时连接新旧版本的数据库-->比对需要搬迁信息数据表的字段-->找出数据表差异后查询旧版本数据库数据,修改后用opencart新版本自带的方法导入数据。
第一步,我们先搭建一个最新版本opencart网站在本地(自己的电脑上)。然后把自己opencart旧版本的整个数据库下载出来,新建一个空的数据库并导入进去。
完成后我们打开新版本程序的system/framework.php,在连接数据库的地方(全文件查询//Database,大概在第78行)连接刚刚新建的旧版本数据库。
//Database
if($config->get('db_autostart')){
$registry->set('db',newDB($config->get('db_engine'),$config->get('db_hostname'),$config->get('db_username'),$config->get('db_password'),$config->get('db_database'),$config->get('db_port')));
//新建一个连接数据库的方法,这里注意前面要set(不同方法名),这样待会儿调用旧版本数据库,因为是本地创建的,在同一数据库里,账户密码都一样,这里我们只用输入不同的数据库名称即可。
$registry->set('edb',newDB($config->get('db_engine'),$config->get('db_hostname'),$config->get('db_username'),$config->get('db_password'),'testdatabases.1564',$config->get('db_port')));
}
第二步:比对数据库中数据表的字段有什么不一样的,为什么要比对数据库的字段呢,因为opencart的很多数据功能基本上都是基于数据来实现的,所以数据存在的时候,功能就能够正常使用了。下面是我对
比分类数据表的部分示范。(温馨提示:如果大家对opencart数据库表结构还不够可以查看opencart3.0版本数据库数据表字典(详细篇),其实找到信息相关数据表还有一个规律的,例如你想找商品相关的数据表,在admin后台商品管理页面的路由是route=catalog/product,所以在opencart数据库中搜索product,一般表前缀(一般默认的是oc_)+product开头的都是商品信息相关联的数据表。)
根据上面的提示蓝色文字内容,我们可以知道opencart新旧版本的分类数据相关的表一共有6个(oc_category,oc_category_description,oc_category_filter,oc_category_path,
oc_category_to_layout,oc_category_to_store),下面只为大家展示了分类两张表的对比。
下图是对比分类主表,我们可以看出分类主表新版本与旧版本字段无差别,
下图是对比分类描述表,分类描述数据表中,opencart新版的分类描述数据表中多了一个meta_title的字段。