Hi,
I am working on AS HTTP Dashboard and there's 10+ different sql statements
used to retrieve data from the db. The code doesn't look nice when there
are a bit lengthy sql statements amidst the jaggery code so I thought of
separating them may be to a different json file. Sql statements needs to be
generated dynamically based on the request parameters, an example would be
the where clause. It's not only the values on the where clause but also the
fields there would vary based on the request.
To generate the sql statement I though of using string placeholder and use
a function similar to the following to retrieve the complete statement.
function formatSql(sql, arguments) {
var formatted = sql;
for (var i = 0; i < arguments.length; i++) {
formatted = formatted.replace(
RegExp('\{' + i + '\}', 'g'), arguments[i]);
}
return formatted;
};
A sample invocation would be,
var sql = 'SELECT sum({1}), {2} FROM {3} {4} GROUP BY {2}';
var formattedSql = formatSql(sql, ['requests', 'browser', 'BROWSER_STAT',
'WHERE webapp=\'Community blog\'']);
and the formattedSql would be
SELECT sum(requests), browser FROM BROWSER_STAT WHERE webapp='Community
blog' GROUP BY browser;
What are your suggestions on the approach?
Is there a better way to separate out the sql statements and to get them
dynamically generated?
--
Best Regards,
Kalpa Welivitigoda
Software Engineer, WSO2 Inc. http://wso2.com
Email: [email protected]
Mobile: +94776509215
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev