2015-09-16 5 views
3

Я использовал строку в функции, как следует.Как включить одиночные кавычки в Inno Setup при переходе к функции?

Я передаю строку определенной функции, если эта строка имеет одинарные кавычки внутри середины, она ломается. Как включить одиночные кавычки в скриптах Inno Setup Pascal?

TempReadValue(StrArray, 'log4j.appender.testing.File=INSERT INTO emp select Eid,'%K','%L'from DistributionTable whereEname = 'Nails:chino'', LogFileName); 

При переходе на работу его принятие до %K, после чего его нарушение. Может ли кто-нибудь вести меня, как читать/передавать всю строку до Nils:chino?

Благодарим за помощь.

ответ

0

Вы должны удвоить одинарную кавычку:

TempReadValue(
    StrArray, 
    'log4j.appender.testing.File=INSERT INTO emp select Eid,''%K'',''%L''from DistributionTable whereEname = ''Nails:chino''',  
    LogFileName); 

См https://www.freepascal.org/docs-html/ref/refse8.html

+0

Martin Спасибо за ур усилие, я пробовал это, но его не работает. Есть ли альтернатива – khanam

+0

Что не работает? Не удается ли его скомпилировать? Это не работает во время выполнения? Любое сообщение об ошибке? –

+0

Если это не удается во время выполнения, это вероятно, потому что у вас неправильный запрос. Вы, например, пропустили пробел в 'whereEname'. Возможно также здесь: '' '% L'' from' –

3

Попробуйте это:

TempReadValue(StrArray, 'log4j.appender.testing.File=INSERT INTO emp select Eid,'+Chr(39)+'%K'+Chr(39)+','+Chr(39)+'%L'+Chr(39)+'from DistributionTable whereEname = '+Chr(39)+'Nails:chino'+Chr(39), LogFileName); 

Это будет работать.

 Смежные вопросы

  • Нет связанных вопросов^_^