2016-03-22 3 views
0

У меня есть базовое программное обеспечение для ведения записей; мы пытаемся захватить адреса электронной почты, поддерживающее программное обеспечение не может захватить знак «@».Обновление строк с помощью функции CHRTRAN Visual FoxPro

Пытается использовать команду Visual FoxPro CHRTRAN для поиска в поле 'UdidText' для запятой ',' и заменить его знаком '@'.

Текущий фрагмент кода гласит:

update [udids] set udidtext = CHRTRAN (udidtext, '%,%', '@') where udidno = '78' and udidtext != '' 

В краткой записке; знак процента - мой предпочтительный шаблон.

Редактирование: при проверке кода в приложении функция вызывает ошибку «Несоответствие типа оператора/операнда».

ответ

2

CHRTRAN() не требует или не требует подстановочных знаков. Второй параметр - это символ или символы для замены. Так что попробуйте:

CHRTRAN(uiditext, ',', '@') 

Тамар

0

В соответствии с chrtran() части, было бы просто:

chrtran(uidtext, ',', '@') 

Ваш код, вероятно, дает вам сообщение об ошибке, потому что udidno не символ? Вероятно, вам необходимо:

.. udidno = 78 ... 

есть.

Однако ваш код вообще не заменит, если ANSI не включен. У вас есть следующее:

... and udidtext != '' 

Если ANSI НЕ ВКЛЮЧЕН, тогда эта часть разрешит FALSE и обновление не произойдет. Чтобы исправить это вам нужно, либо SET ANSI ON или лучше использовать ==, который ANSI бесплатно:

update [udids] set udidtext = CHRTRAN(udidtext, ',', '@') where udidno = '78' and !(udidtext == '') 

Таким же образом = «78» будет означать какие-либо записи, где udidno начинается с «78». Если вам нужно точное совпадение там, то, что стало бы:

update [udids] set udidtext = CHRTRAN(udidtext, ',', '@') where udidno == '78' and !(udidtext == '') 

Последняя часть на самом деле нет необходимости, поэтому он становится:

update [udids] set udidtext = CHRTRAN(udidtext, ',', '@') where udidno == '78' 

И, наконец, ваш udidno может быть числовым:

update [udids] set udidtext = CHRTRAN(udidtext, ',', '@') where udidno = 78 

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

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