我们在安装好SMO后,配置好环境变量 path=SMO_Java_702_11502_44194_32_x86_Win_vc11_CHS_Zip\Bin; 就可以进行组件扩展开发了,当然还需要导入对应的jar包;
提示:如果我们连接的不是本地数据库,则还需要配置数据库接听,如oracle客户端接听。
下面方法是进行更新操作的一个例子:
参数参考文档:
int num = 0;
/***
* @param addBMW4S:参数集合
* @param daima:行政区划代码
* @param datasetname:数据表
* @author Wangtao
* @throws Exception
*/
private void updateCeate(HashMap<String,Object> addBMW4S,String daima ,String datasetname) throws Exception {
System.out.println(daima);
// String datasetname = "city";
// String APPLICATIONCODParam = " REGIONCODE = "+daima+"";
String APPLICATIONCODParam = "REGIONCODE like '"+daima+"%'";
QueryParameter queryParameter = new QueryParameter();
queryParameter.setAttributeFilter(APPLICATIONCODParam); //设置查询条件
queryParameter.setCursorType(CursorType.DYNAMIC);
DatasetVector BMWModel = (DatasetVector)InitDataSource.getInitDataSourceSingle().getDataSet(datasetname);
//Dataset dataset = InitDataSource.getDataSet(datasetname);
Recordset BMWModelRecordSet = BMWModel.query(queryParameter);
int nums = BMWModelRecordSet.getRecordCount(); //所有需要更新的数据总数
System.out.println(nums+"-");
num+=1;
BMWModelRecordSet.moveFirst();
for(int n=0;n<nums;n++){
BMWModelRecordSet.edit();
if(BMWModelRecordSet.setValues(addBMW4S)) {
System.out.println("CityTier 数据更新成功-"+num+"条记录!");
BMWModelRecordSet.update();
} else {
System.out.println("CityTier 数据更新失败-"+num+"条记录!");
}
BMWModelRecordSet.moveNext();
}
InitDataSource.getInitDataSourceSingle().closWorkSpace();
}