Excel экранирование кавычек или Апостроф в значениях ячеек
Я получаю много информации о базе данных от клиентов в электронных таблицах excel. Мне часто нужно вставлять / обновлять эти данные обратно в базу данных.
Я часто использую excel для создания инструкций insert и update путем объединения группы ячеек вместе. Иногда данные включают текстовые ячейки, в которых могут быть одинарные кавычки. Если не обращаться с ними осторожно, эти одинарные кавычки сделают операторы SQL разрывными.
Как я могу избежать одинарных кавычек в тексте данные через формулы при объединении группы значений ячеек вместе, чтобы мои результирующие сценарии SQL были действительны?
2 ответов
лучшее решение, которое я нашел, - использовать следующее:
=SUBSTITUTE(A1, "'", "''")
это заменит все одинарные кавычки двумя одинарными кавычками, которые в операторах T-SQL избегают символа и рассматривают его как строковые данные.
используя CONCATENATE
с двойными кавычками просто требует экранирования цитаты. Это делается следующим образом:
=CONCATENATE("""";"In quotes!";"""")