Проблема, которую нам нужно регулярно решать на моем рабочем месте, заключается в том, как создавать операторы SQL на основе предоставленных пользователем имен таблиц / столбцов. Проблема, которую я пытаюсь решить, - это запятые между именами столбцов.
Одна техника выглядит примерно так.
selectSql = "SELECT ";
for (z = 0; z < columns.size(); z++)
{
selectSql += columns[z]._name;
selectSql += ", ";
}
selectSql = selectSql(0, selectSql.len() - 2);
selectSql += "FROM some-table";
Другая техника выглядит примерно так
selectSql = "SELECT ";
for (z = 0; z < columns.size(); z++)
{
selectSql += columns[z]._name;
if (z < columns.size() - 1)
selectSql += ", ";
}
selectSql += "FROM some-table";
Я не особо увлечен ни одной из этих реализаций.
Мне интересно услышать идеи о других способах решения этой проблемы, с целью облегчить чтение / понимание / сопровождение кода.
Какие альтернативные методы доступны?