void SQLCode::_BuildSQLStatement(SQLVarParms& varParms, SQLStatement& rSqlStatement) { BOOST_LOG_FUNCTION(); std::string strSQLKey; SQLStatement SQLFormats; int nDbType = 0; size_t uiTotalSQLSize = 0; try { size_t uVarCount = varParms.size(); if (uVarCount < 1) { throw DataAccessException(ER_DB_ERR_SQLCode, "the PrepareStatement parameter count error!"); } _GetDbTypeAndSQLKey(varParms, strSQLKey);//strSQLID=strSQLKey=varParms[0] _GetSQLFormat(strSQLKey, SQLFormats); _BuildNormalSQL(varParms, SQLFormats, rSqlStatement); rSqlStatement.logInfo(); } catch (DataAccessException& e) { throw e; } catch (...) { throw DataAccessException(ER_DB_ERR_UNKNOWN, "buildSQLStatement error!"); } }