void SQLCode::_BuildNormalSQL(const SQLVarParms& varParms, SQLStatement& rSQLFormats, SQLStatement& rSqlStatement) { BOOST_LOG_FUNCTION(); if (!rSQLFormats.strCommonSQL.empty()) { _BuildSQL(varParms, rSQLFormats.strCommonSQL, rSqlStatement.strCommonSQL); } else { if (rSQLFormats.strOracleSQL.empty() || rSQLFormats.strMySQLSQL.empty() || rSQLFormats.strSQLiteSQL.empty()) { throw DataAccessException(ER_DB_ERR_SQLCode, "The MySQL or Oracle SQL or SQLite Format is empty"); } // build Oracle SQL Statement _BuildSQL(varParms, rSQLFormats.strOracleSQL, rSqlStatement.strOracleSQL, enumOracleDb); // build MySQL SQL statement _BuildSQL(varParms, rSQLFormats.strMySQLSQL, rSqlStatement.strMySQLSQL, enumMysqlDb); // build SqliteDb SQL Statement _BuildSQL(varParms, rSQLFormats.strSQLiteSQL, rSqlStatement.strSQLiteSQL, enumSqliteDb); } }
void SQLCode::_BuildNormalSQL(const SQLVarParms& varParms, SQLStatement& rSQLFormats, SQLStatement& rSqlStatement) { if (!rSQLFormats.strCommon.empty()) { size_t uiTotalSQLSize = _GetSQLSize(varParms, rSQLFormats.strCommon); if ( uiTotalSQLSize > MAX_SQLSTRING_LEN ) { _BuildLargeSQL(varParms, uiTotalSQLSize, rSQLFormats.strCommon, rSqlStatement.strCommon); } else { _BuildSQL(varParms, rSQLFormats.strCommon, rSqlStatement.strCommon); } } else { if (rSQLFormats.strMySQL.empty() || rSQLFormats.strSqlite.empty()) TA_THROW(BadParamCount("The MySQL or Oracle SQL Format is empty")); // build MySQL SQL statement size_t uiTotalSQLSize = _GetSQLSize(varParms, rSQLFormats.strMySQL, enumMySQL_SQL); if ( uiTotalSQLSize > MAX_SQLSTRING_LEN ) { _BuildLargeSQL(varParms, uiTotalSQLSize, rSQLFormats.strMySQL, rSqlStatement.strMySQL, enumMySQL_SQL); } else { _BuildSQL(varParms, rSQLFormats.strMySQL, rSqlStatement.strMySQL, enumMySQL_SQL); } // build Oracle SQL Statement uiTotalSQLSize = _GetSQLSize(varParms, rSQLFormats.strSqlite, enumOracle_SQL); if ( uiTotalSQLSize > MAX_SQLSTRING_LEN ) { _BuildLargeSQL(varParms, uiTotalSQLSize, rSQLFormats.strSqlite, rSqlStatement.strSqlite, enumOracle_SQL); } else { _BuildSQL(varParms, rSQLFormats.strSqlite, rSqlStatement.strSqlite, enumOracle_SQL); } } }