powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Не выполняется условие сравнения переменных
9 сообщений из 9, страница 1 из 1
Не выполняется условие сравнения переменных
    #39918064
very_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет!
есть функция, которая возвращает собранную строку, к примеру:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
declare
  CLSTVAL varchar2(2048);
  CTMPVAL varchar2(2048);
begin
  for i in 1..10 loop
    CTMPVAL := 'string'||to_char(i);
    CLSTVAL := CLSTVAL||DBASE.IIF(CLSTVAL IS NULL,'',',')||chr(39)||CTMPVAL||chr(39);
    if 'string1' = CLSTVAL then
      dbms_output.put_line('###'||CLSTVAL);
    end if;  
  end loop;
end; 


если собираемые значения chr(39)||CTMPVAL||chr(39) оборачивать в кавычки, то не срабатывает условие сравнения if 'string1' = CLSTVAL then
без кавычек CTMPVAL - условие if 'string1' = CLSTVAL then выполняется, но при этом я получу не корректную строку значений. Вместо 'string1','string2' ... будет string1,string2...
Помогите разобраться и исправить данную проблему!?
...
Рейтинг: 0 / 0
Не выполняется условие сравнения переменных
    #39918071
проходил мимо...
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
very_,

Код: plsql
1.
'''string1'''
...
Рейтинг: 0 / 0
Не выполняется условие сравнения переменных
    #39918077
very_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вот именно что значение для сравнения приходит в таком виде 'string1' преобразовать его в '''string1''' я не могу
...
Рейтинг: 0 / 0
Не выполняется условие сравнения переменных
    #39918081
проходил мимо...
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
very_,

с**а, до слёз...
...
Рейтинг: 0 / 0
Не выполняется условие сравнения переменных
    #39918082
very_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
проходил мимо..., происходит автогенерация функции по этой причине и нет возможности
...
Рейтинг: 0 / 0
Не выполняется условие сравнения переменных
    #39918083
проходил мимо...
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
very_,

Воспользуюсь, пожалуй, рекомендациями Elic'а
https://bugtraq.ru/forum/faq/general/smart-questions.html] RTFM
...
Рейтинг: 0 / 0
Не выполняется условие сравнения переменных
    #39918084
Фотография SY
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
declare
    CLSTVAL varchar2(2048);
    CTMPVAL varchar2(2048);
    DELIMITER varchar2(1);
begin
    for i in 1..10 loop
      CTMPVAL := 'string'||to_char(i);
      CLSTVAL := CLSTVAL || DELIMITER || CTMPVAL;
      if 'string1' = CLSTVAL
        then
          dbms_output.put_line('###' || CLSTVAL);
      end if;
      DELIMITER := ',';
    end loop;
end;
/
###string1

PL/SQL procedure successfully completed.

SQL>



SY.
...
Рейтинг: 0 / 0
Не выполняется условие сравнения переменных
    #39918171
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
very_
Помогите разобраться и исправить данную проблему!?
http://www.bugtraq.ru/forum/faq/general/smart-questions.html] RTFM
...
Рейтинг: 0 / 0
Не выполняется условие сравнения переменных
    #39918216
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SY,

імхо, very_ хочет в CLSTVAL получить
'string1','string2','string3','string4','string5','string6','string7','string8','string9','string10'

поетому

22065491

if '''string1''' = CLSTVAL then

.....
stax
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Не выполняется условие сравнения переменных
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]