Страница 1 из 2

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

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

Проблема вот в чём: Если в тексе some_text всречается символ (') то весь запрос коту под хвост идёт. Как этого можно избежать? С символом (") то же самое. Спасибо.

Добавлено: 22 июл 2005, 03:02
AiK
Правило простое - двойные кавычки окружаются одинарными, одинарные - двойными.

Добавлено: 22 июл 2005, 03:10
kfc
Это я понимаю. Но если в тексте есть и те и другие.

Добавлено: 22 июл 2005, 03:24
AiK

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

declare @a varchar(32)
select @a = "it's "+ '"very stupid" ' + "sample"
select @a

Добавлено: 22 июл 2005, 03:30
AiK

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

declare @a varchar(32)
select @a = 'it''s "another stupid" sample'
select @a

Добавлено: 22 июл 2005, 03:31
kfc
То есть получается мне нужно сканировать строку в скрипте?

Добавлено: 22 июл 2005, 03:46
AiK
Угу. Между прочим - одно из основных предназначений perl'а.

Добавлено: 22 июл 2005, 03:53
kfc
знаю.... за sql обидно. ))

Добавлено: 25 июл 2005, 21:42
kfc
Такой запрос должен работать? 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)

Добавлено: 25 июл 2005, 22:29
AiK
Он и работает. Ты б рассказал, что у тебя за SQL?