Каковы подробности использования CF_SQL_NVARCHAR в ColdFusion 10?

Документация ColdFusion 10 по обновлению базы данных содержит разделУлучшения, связанные с базами данных в ColdFusion 10, На этой странице упоминается, что теперь есть поддержкаCF_SQL_NVARCHAR среди прочих, но без подробностей о них. Кроме того,документация cfqueryparam не был обновлен, чтобы включить их существование.

Документация ColdFusion 9 для cfqueryparam упоминает, чтоCF_SQL_VARCHAR карты дляvarchar в MSSQL. Это верно, если администратор ColdFusionнастройки источника данных имеетString Format настройка включена. В таком случаеCF_SQL_VARCHAR карты дляnvarchar, Эта плохо документированная функция - это взлом, который можетвызвать проблемы с производительностью в пределах ColdFusion.

Так что здорово, что они ввелиCF_SQL_NVARCHAR, но было бы хорошо понять, как это работает. Это просто псевдоним дляCF_SQL_VARCHAR делать это бессмысленно? Всегда ли он отправляет строки какnvarchar? Если да, тоCF_SQL_VARCHAR всегда отправлятьvarchar?

Я надеюсь, что для обеспечения обратной совместимости это реализовано так:

ЕслиString Format включенCF_SQL_VARCHAR а такжеCF_SQL_NVARCHAR обе карты вnvarchar.

ЕслиString Format затем отключенCF_SQL_VARCHAR карты дляvarchar а такжеCF_SQL_NVARCHAR карты дляnvarchar.

Это будет означать, что любые сайты до CF10 могут перейти на CF10 и работать с теми же соображениями производительности, что и до CF10.

Новые сайты или сайты, которые переписывают все запросы, чтобы соответствоватьCF_SQL_VARCHAR а такжеCF_SQL_NVARCHAR При проектировании базы данных не получится снижение производительности, что неизбежно до CF10.

Может ли кто-нибудь подтвердить, если это так; даже лучше если с чем то официальным?

Ответы на вопрос(1)

Ваш ответ на вопрос