запос со специальными символами

SQL во всех проявлениях - от ANSI-92 до TSQL.

Модераторы: Yurich, Absurd

kfc
Сообщения: 21
Зарегистрирован: 06 май 2005, 22:22

Такая проблема:
Я пишу на перле. Создаю запрос на вставку так:
....
$sql=$sql."\'".$some_text."\', "
.....

Проблема вот в чём: Если в тексе some_text всречается символ (') то весь запрос коту под хвост идёт. Как этого можно избежать? С символом (") то же самое. Спасибо.
Аватара пользователя
AiK
Сообщения: 2287
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

Правило простое - двойные кавычки окружаются одинарными, одинарные - двойными.
Даже самый дурацкий замысел можно воплотить мастерски
kfc
Сообщения: 21
Зарегистрирован: 06 май 2005, 22:22

Это я понимаю. Но если в тексте есть и те и другие.
Аватара пользователя
AiK
Сообщения: 2287
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

Код: Выделить всё

declare @a varchar(32)
select @a = "it's "+ '"very stupid" ' + "sample"
select @a
Даже самый дурацкий замысел можно воплотить мастерски
Аватара пользователя
AiK
Сообщения: 2287
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

Код: Выделить всё

declare @a varchar(32)
select @a = 'it''s "another stupid" sample'
select @a
Даже самый дурацкий замысел можно воплотить мастерски
kfc
Сообщения: 21
Зарегистрирован: 06 май 2005, 22:22

То есть получается мне нужно сканировать строку в скрипте?
Аватара пользователя
AiK
Сообщения: 2287
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

Угу. Между прочим - одно из основных предназначений perl'а.
Даже самый дурацкий замысел можно воплотить мастерски
kfc
Сообщения: 21
Зарегистрирован: 06 май 2005, 22:22

знаю.... за sql обидно. ))
kfc
Сообщения: 21
Зарегистрирован: 06 май 2005, 22:22

Такой запрос должен работать? INSERT INTO WORK_ORDER VALUES('1',1, 'text', 'text', '2', 'text', 'text', 'text', 'text', "It doesn't work. This machine is "+'"stupid"'+". That's the problem", 'text', 'text', 1)
Аватара пользователя
AiK
Сообщения: 2287
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

Он и работает. Ты б рассказал, что у тебя за SQL?
Даже самый дурацкий замысел можно воплотить мастерски
Ответить