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