Динамическое имя таблицы в DAO.cfc? - PullRequest
0 голосов
/ 21 августа 2009

Я пишу подсистему, в которой таблицы могут быть переименованы из проекта в проект.

Вместо того, чтобы просить пользователя моей подсистемы выполнить поиск и замену перед ее использованием, это работает?

<cfquery name="local.foo" datasource="#dsn#">
  SELECT col1, col2, col3
  FROM #tableName#
</cfquery>

Без <cfqueryparam> станет не кешируемым? или какие-то другие вопросы? (предположим, SQL-инъекция не является проблемой)

Не думаю, что могу использовать <cfqueryparam> для названия таблицы, верно?

Спасибо.

1 Ответ

3 голосов
/ 21 августа 2009

Это сработает, конечно. CF просто преобразует все переменные в их значения и отправляет строку в драйвер базы данных.

Будьте очень, очень осторожны. Как вы и предполагали, это может привести к неприятным SQL-инъекциям.

...