仓酷云

标题: MYSQL编程:oracle年夜数据量的导进和导出 [打印本页]

作者: 若天明    时间: 2015-1-16 22:44
标题: MYSQL编程:oracle年夜数据量的导进和导出
”由于MySQL已经是一个运行了众多知名Web2.0网站的数据,包括Craigslist、Digg、Wikipedia和Google等,或许我们可以说每一个Web2.0公司实质上是一个使用MySQL数据库的公司。oracle|数据
在oracle中批量数据的导出是借助sqlplus的spool来完成的。批量数据的导进是经由过程sqlload来完成的。大批数据的导出部分以下:/****************************sql剧本部分demo.sqlbegin**************************//***************************@authormeconsea*@date20050413*@msnmeconsea@hotmail.com*@Emailmeconsea@163.com**************************/

//##--markuphtml:html格局输入,缺省为off

//##--autocommit:主动提交insert、update、delete带来的纪录改动,缺省为off

//##--define:辨认命令中的变量前缀符,缺省为on,也就是&,碰着变量前缀符,前面的字符串作为变量处置.

setcolsep;//##--域输入分开符

setechooff;//##--显现start启动的剧本中的每一个sql命令,缺省为on

setfeedbackoff;//##--回显本次sql命令处置的纪录条数,缺省为on

setheadingoff;//##--输入域题目,缺省为on

setpagesize0;//##--输入每页行数,缺省为24,为了不分页,可设定为0。

setlinesize80;//##--输入一行字符个数,缺省为80

setnumwidth12;//##--输入number范例域长度,缺省为10

settermoutoff;//##--显现剧本中的命令的实行了局,缺省为on

settimingoff;//##--显现每条sql命令的耗时,缺省为off

settrimouton;//##--往除尺度输入每行的拖尾空格,缺省为off

settrimspoolon;//##--往除重定向(spool)输入每行的拖尾空格,缺省为off

spoolC:datadmczry.txt;

selecttrim(czry_dm),trim(swjg_dm),trim(czry_mc)fromdm_czry;

spooloff;

EOF

/************************demo.sqlend***********************/在数据导进的时分接纳sqlload来挪用,在该部分挪用的时分用java来挪用sqlload。sqlload包含ctl把持文件。比方:/**********************meconseactl********************/loaddatainfileC:datadmczry.txtreplaceintotableDM_CZRYfieldsterminatedbyX09(CZRY_DM,SWJG_DM,CZRY_MC)/*********************end*正文:内里的replace能够改成append*******************/java程序以下:在java程序用能够依据需求写成一个bat文件。把数据库的设置和文件的路径写到一个properties文件。/**************************ideproperties************************/Dserver=test/test@SJJZsqlldr=D:oracleora92inQLLDR.EXE

ctldmczry=C:datactldmczry.ctltxtdmczry=C:datadmczry.txt

写个PropertyBean.java来操纵properties文件。(偷懒不写了!)用DmCzry.java来把纪录导进db中。部分代码以下:

/*****************************代码择要****************************/..............sqlldr=pb.getSqlldr();txt=pb.getTxtdmczry();ctl=pb.getCtldmczry();Dserver=pb.getDserver();ProcessprocessCmd=Runtime.getRuntime().exec(sqlldr+""+cmdStr);.............
在我们工作的过程中,经常能听到很多不使用MySQL的理由,虽然其中有一些是对MySQL的误解,不过同样也有一些是合情合理的。
作者: 柔情似水    时间: 2015-1-19 22:07
记得在最开始使用2k的时候就要用到这个功能,可惜2k没有,现在有了作解决方案的朋友会很高兴吧。
作者: 老尸    时间: 2015-1-28 13:10
一个百万级别的基本信息表A,一个百万级别的详细记录表B,A中有个身份证id,B中也有身份id;先要找出A中在B的详细记录。
作者: 冷月葬花魂    时间: 2015-2-5 15:01
SP4是一个累积性的ServicePack,包含自以前的ServicePack发布以来所有的修补程序(包括MS03-031安全公告)。
作者: 再现理想    时间: 2015-2-12 09:15
我个人认为就是孜孜不懈的学习
作者: 透明    时间: 2015-3-3 02:04
以前的DTS轻盈简单。但是现在的SSIS虽然功能强大了很多,但是总是让人感觉太麻烦。看看论坛中询问SSIS的贴子就知道。做的功能太强大了,往往会有很多用户不会用了
作者: 小妖女    时间: 2015-3-11 08:28
需要注意的一点,也是我使用过程中发现的一个问题。在建立function->schema->table后,如果在现有的分区表上建立没有显式声明的聚集索引时,分区表会自动变为非分区表。这一点很让我纳闷。
作者: 蒙在股里    时间: 2015-3-18 00:29
其实可以做一下类比,Oracle等数据库产品老早就支持了java编程,而且提供了java池参数作为用户配置接口。但是现在有哪些系统大批使用了java存储过程?!连Oracle自己的应用都不用为什么?!
作者: 乐观    时间: 2015-3-25 08:51
不好!如果出了错;不好调试;不好处理!其实web开发将代码分为3层:web层;业务逻辑层和数据访问层;一般对数据库的操作都在数据访问层来做;这样便于调试和维护!而且将来如果是换了数据库的话;你只需要改数据层的代码;其他层的基本可以不变!要是你在jsp中直接调用sql数据库;那么如果换了数据库呢?岂不都要改?如果报了异常呢?怎么做异常处理?




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2