技术开发 频道

网友实战DM6迁移功能之Excel数据转换

  【IT168 独家

  编者言:在4月份举办的2010中国数据库与商业智能技术大会上,国产数据库的代表厂商达梦高调亮相,给一向由国外厂商把持的企业商业数据库市场带来不小的波澜。人们开始纷纷将目光投向国产数据库软件市场,开始关注由中国人自己开发的数据库产品。

  国产数据库产品究竟能不能用?在功能和特性上够不够用?为了解开这些疑问,我们特邀请在数据库业界众多知名的技术专家亲身试用相关产品,并真实地写出自己的试用感受。这些专家大都是Oracle数据库的ACE,或者是对其它主流的商业数据库十分精通和了解,让他们站在这样的角度来客观写出自己对国产数据库的技术评测,是非常有说服力的。

  尽管各位专家的工作都十分繁忙,但他们还是都认为,将国产数据库软件在技术上的真实情况书写出來,给出自己中肯的评价,这是一件非常有意义的工作。更令人欣慰的是,相比过去,今天像达梦这样的国产数据库产品已经显得非常自信,它们希望听到业界技术专家的建议甚至是批评,不断完善自己的产品和功能,这将是一个非常良性的循环,长此下去,我们相信,摆在国产数据库脚下的将是更为宽广的道路!

  作者简介:邵宗文,网名卡卡西jeffrey,数据库技术爱好者。现任职于国内某大型互联网公司,提供数据库架构,规划与运维支持。实践经验丰富,擅长数据库诊断、性能调整等。曾任新浪资深数据库专家,数据库平台主管。有非常丰富的大型项目的经验:如统一通行证,发布系统,论坛,财经,体育等重大项目的数据库架构改造和实施。

  从达梦的官方网上了解,达梦数据库产品已成功用于我国国防军事、公安、安全、财政金融、电力、水利、电信、审计、交通、信访、电子政务、税务、国土资源、制造业、消防、电子商 务、教育等20多个行业及领域,偏重于企业应用。 这和mysql偏互联网业务有所差别,因此暂定此次测试,主要围绕企业应用。

  由于一般中小企业普遍数据量不大,但是大部分是excel作为日常数据格式,所以我就先试用了达梦的迁移功能,从excel导入到达梦数据库的功能。

  测试环境:主要是用了windows环境,见图1:

图1:系统环境

  达梦的安装版本,通过达梦自带交互式工具,可以看到如下图2

图2:达梦版本信息

  另外感觉达梦的安装过程比较傻瓜化,界面也还不错。

  1.开始进行建库操作,在这里,我故意建了一个不存在的路径,想观察一下报错信息是否完备。不过稍微有些可惜,并没有看到详细的报错信息,这可能需要国产数据库软件细节处理有待进一步加强。

图3:错误输出

  2.然后创建正常的testszw库,这次给了正确路径之后就没有问题了。

图4:正确返回执行结果

  3.然后我把一个记录北京房产销售情况的excel报表作为原始数据,在导入时候使用达梦自带的迁移工具,选择excel导入,然后按照提示来,非常顺利,没有什么问题。见图5

图5:顺利迁移

  4.然后通过SQL命令工具,在testszw库下执行select语句,成功能获得相应结果。见图6

图6:查询对应house表获得的结果

  5.然后当我选择查具体某一天如2009-12-01这天时候对应房产信息,缺很奇怪发现,对应的select * from house where date='2009-12-01';

  没有任何返回结果。见图7和图8

图7:唯有返回结果

图8:显示该条sql语句执行成功

  6.然后我抱着好奇的心态,发现是因为导入时候,表字段不是按照我们之前认为的,是date类型,或是int类型,而是统统都变成了varchar类型。(事后从官方了解,目前的DM的策略是所有类型默认导入成varchar类型,迁入的时候可以手工指定导入后在数据库中的类型。)见图9

图9:表对应的字段显示

  7.然后我想把第一个字段varchar改为date时间字段类型。

  结果发现如下含糊错误。图10

图10:字段错误信息

  8.然后我以为是因为date名字和date类型重复所致,所以把名字改为riqi,但是改为名字之后,再去改varchar类型为date时候,依然出错。图11

图11:出错信息报非日期类型

  9.但是我原始的excel数据文档明明是日期类型。图12

图12:excel数据文档

  总结

  一般企业偏重excel存数据,企业内部之间大部分都是以excel为主,之前如果用mysql作为企业数据库的话,往往需要通过第三方工具或是写一些perl,php脚本进行迁移。比较耗费时间。有了达梦这种自带转换工具,可以说是很多企业系统管理员的福音了。根据这个excel导入实验DM6的使用体验,DM6的一些针对企业用户功能最频繁的excel转入功能,总的来说还是比较不错的,可能就是对日期类型的处理尚需要进一步加强,完善细节处理,更好的抓住用户。

0
相关文章