您的位置:首页 > 其它

OCCI调用存储过程实现批量插入

2011-09-14 15:11 337 查看
// 打开一个查询
COcciQuery occiQuery;
occiQuery.Open(m_pServerInfo->m_connPool.m_connTSP.GetConn());

// 初始化存储过程
occiQuery.SetSQL("BEGIN LHWT_CUSTOMER_REGIST_PRO(:v1, :v2, :v3, :v4, :v5, :v6, :v7, :v8, :v9); END;");

// 执行存储过程
Statement* pStatement = occiQuery.GetStatment();
if(NULL != pStatement)
{
// 设置批量插入的最大条数
pStatement->setMaxIterations(128);

// 设置存储过程各参数的字节大小
pStatement->setMaxParamSize( 1, 16 );
pStatement->setMaxParamSize( 2, 16 );
pStatement->setMaxParamSize( 3, 16 );
pStatement->setMaxParamSize( 4, 16);
pStatement->setMaxParamSize( 5, 16 );
pStatement->setMaxParamSize( 6, 30 );
pStatement->setMaxParamSize( 7, 30 );
pStatement->setMaxParamSize( 8, 30 );

for( int i = 0; i < N; i++)
{
pStatement->setString( 1, userInfo.m_szVehicleNumber );
pStatement->setString( 2, userInfo.m_szDeviceMobileNumber );
pStatement->setString( 3, userInfo.m_szVehiclesType );
pStatement->setString( 4, userInfo.m_szBrand );
pStatement->setString( 5, userInfo.m_szModel );
pStatement->setString( 6, userInfo.m_szMotorNumber );
pStatement->setString( 7, userInfo.m_szFrameNum );
pStatement->setString( 8, userInfo.m_szBuyUser );

// 注意:最后一条记录不要调用该函数
if( i != N-1 )
pStatement->addIteration();
}

occiQuery.ExecuteProc();
}

occiQuery.Close();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: