Я работаю над informix-4gl. Мои программы собираются добавлять и обновлять информацию о пользователе из одной таблицы во многие таблицы. В случае, если была информация от пользователя, содержащая символ «'» или одинарную кавычку, такую как имя покупателя или адрес пользователя. Моя проблема заключается в том, что когда я обновляю таблицы, информация, содержащая символы одинарной кавычки, не обновляется. И теперь я обнаружил, что для ввода значений, которые были на другом онлайн-сервере, должны быть двойные кавычки. Теперь я собираюсь изменить одинарные кавычки на двойные кавычки. Я пытался изменить такой код, но он читает только одинарные кавычки.
LET rmks_lgth = LENGTH(p_crsell.crse_purc_nme)
FOR a = 1 TO rmks_lgth
IF p_crsell.crse_purc_nme[a] = "'" THEN
LET p_crsell.crse_purc_nme[a] = "''"
END IF
END FOR
Я пытался изменить коды, чтобы создавать двойные кавычки. Кавычки должны удваиваться для каждого ввода, содержащего символ кавычки «'».
LET rmks_lgth = LENGTH(p_crsell.crse_purc_nme)
FOR a = 1 TO rmks_lgth
FOR b = 1 TO rmks_lgth
IF p_crsell.crse_purc_nme[a] = "'" THEN
LET p_crsell.crse_purc_nme[a] = "'"
LET p_crsell.crse_purc_nme[b] = "'"
END IF
END FOR
END FOR
коды выше будут производить только вывод
''
где нет других значений. кто-то называет ceinmark, предположил, что «мне нужно создать функцию 4GL, чтобы найти цитату, затем разделить строку на две части в том месте, где вы ее нашли, и объединить «новую» цитату с этими двумя частями строки».