MENU 服务 案例
网站建设-网站设计-北京网站建设-高端网站制作公司-尚品中国
我们通过拥抱变化创造
360°的品牌价值__
简体
简体中文 English

尚品签约Charles River | 维通利华网站建设项目

类型:项目动态 了解更多

网站数据从ORACLE迁移到MYSQL教程

来源:尚品中国| 类型:网站百科| 时间:2012-05-24
网站制作(www.sino-web.net)整体改版升级,因为想要降低网站运行成本,考虑变更数据库,由原来的企业级数据库ORACLE变更为较为小型的MYSQL,数据库的变更中的一个重要过程就是网站的数据迁移。在数据迁移过程中遇到一些问题并花了较长的时间解决,今天就分析总结下网站的后台数据库构建中需要注意的问题。

1、不同数据库的个别数据类型定义不同

在数据库变更的测试过程中,发现网站以往的文章详情页面的文章发表时间显示有问题,非正常格式的年—月—日时:分的样式。

经过页面调取文件代码、数据库记录等内容的检查后,发现是由于ORACLE中对时间的定义类型只有Date一种,而这种定义类型的格式包括年月日和时间;而在MYSQL中对时间的定义类型包含Date、Time、Datetime三种,在MYSQL中对于Date类型的定义仅仅包含年月日而不包含时间。

要解决这个问题,只能把MYSQL数据库表中创建的字段类型由原来的Date改为Datetime,再重新进行这类数据的导入。

小结:不同的数据库对具体类型定义不同,因此在完成新数据库表结构构件后,最好进行少量数据记录条迁移进行数据测试,能够及时发现问题所在并进行数据类型修改,再进行全部数据的迁移,以免造成数据重复导入,增加工作量。

2、不同数据库对大小写区分不同

在数据库迁移测试过程中,发现通过网站后台管理系统增加的文章出现异常情况,会出现报错信息。通过调取数据库的文章SiteArticle表的记录发现新文章对应的记录条未能正常插入。

通过代码测试检查发现,是由于网页文件的代码对于数据库的操作的表名字大小写不一致造成的,ORACLE数据库具有较好的包容度,支持网页文件关于insert into Sitearticle()代码对于SiteArticle表的插入新记录操作;而MYSQL数据库对大小写敏感,只支持insert into SiteArticle()代码对于SiteArticle表的插入新记录操作。

要解决这个问题,只能仔细查看网页文件源码,更改对数据库操作的所有语句的数据库名、表名、字段名等的字符大小写,保持与数据库中创建名称的大小写一致。

小结:从兼容性角度考虑,在网站建设的时候就规范数据库操作相关代码中的大小写问题,在今后更换数据库或升级数据库的过程中,就不必担心大小写敏感度问题,也减少许多更改代码工作量。

3、不同数据库对保留字的要求不同

在数据库迁移过程中,发现在统一了大小写问题后,提交文章时候关键字标签的记录插入依旧失败,报错信息提示为语法错误。

经过排查,发现是保留字在捣鬼。在ORACLE数据库中对保留字的态度是较为宽容的,可以表名和字段名称均可以使用保留字;而MYSQL数据库规定保留字是不可以作为表名和字段名的。在网站的数据库Sitearticle表中的其中一个字段名为show,属于保留字,因此同样建立在MYSQL数据库后,插入新记录报语法错误。

解决这个问题,需要在网页代码中将代码语句中的关于Sitearticle表的show字段名用``符号(即1按键前面的按键输入的符号)引起来以区别。

小结:不同数据库对保留字的要求不同,所以在网站数据库建设的时候不论当前数据库类型版本是否支持,尽量不用保留字作为字段名和表名,以保障后期数据库版本的升级和替换后运行正常。
本文发布于北京网站制作公司尚品中国http://www.sino-web.net/
来源声明:本文章系尚品中国编辑原创或采编整理,如需转载请注明来自尚品中国。以上内容部分(包含图片、文字)来源于网络,如有侵权,请及时与本站联系(010-60259772)。
TAG标签:

如果您的网站可以增加转化次数并提高客户满意度,该怎么办?

预约专业咨询顾问沟通!

*尚品专业顾问将尽快与您联系

免责声明

非常感谢您访问我们的网站。在您使用本网站之前,请您仔细阅读本声明的所有条款。

1、本站部分内容来源自网络,涉及到的部分文章和图片版权属于原作者,本站转载仅供大家学习和交流,切勿用于任何商业活动。

2、本站不承担用户因使用这些资源对自己和他人造成任何形式的损失或伤害。

3、本声明未涉及的问题参见国家有关法律法规,当本声明与国家法律法规冲突时,以国家法律法规为准。

4、如果侵害了您的合法权益,请您及时与我们,我们会在第一时间删除相关内容!

联系方式:010-60259772
电子邮件:394588593@qq.com

现在就与专业咨询顾问沟通!

  • 全国服务热线

    400-700-4979

  • 北京服务热线

    010-60259772

信息保护中请放心填写
在线咨询

免责声明

非常感谢您访问我们的网站。在您使用本网站之前,请您仔细阅读本声明的所有条款。

1、本站部分内容来源自网络,涉及到的部分文章和图片版权属于原作者,本站转载仅供大家学习和交流,切勿用于任何商业活动。

2、本站不承担用户因使用这些资源对自己和他人造成任何形式的损失或伤害。

3、本声明未涉及的问题参见国家有关法律法规,当本声明与国家法律法规冲突时,以国家法律法规为准。

4、如果侵害了您的合法权益,请您及时与我们,我们会在第一时间删除相关内容!

联系方式:010-60259772
电子邮件:394588593@qq.com