Как добавить в запрос к бд переменную ?

Kokos

Client
Регистрация
05.09.2019
Сообщения
117
Благодарностей
56
Баллы
28
Если делаю запрос
select id, login, proxy FROM acc WHERE STATUS='ban' ORDER BY use_time LIMIT 1;
работает как надо, если же в вместо конкретного значения столбец STATUS пытаюсь добавить переменную, значение которой ban


select id, login, proxy FROM acc WHERE STATUS= "+ project.Variables["status_bd"].Value +" ORDER BY use_time LIMIT 1;

выдает ошибку Выполнение действия CSharp OwnCode Unknown column 'ban' in 'where clause'
 

zortexx

Client
Регистрация
19.09.2011
Сообщения
2 520
Благодарностей
1 226
Баллы
113
между плюсами и кавычками пробел есть?

P.S.: если вы совершаете коннект из шарпа, то лучше предоставьте код инициализации переменных и подключения целиком, используя возможности форума для постинга кода, чтобы не потерялись спецсимволы.
 
  • Спасибо
Реакции: Kokos

ebrwebrw

Client
Регистрация
20.08.2018
Сообщения
221
Благодарностей
164
Баллы
43
select id, login, proxy FROM acc WHERE STATUS='"+ project.Variables["status_bd"].Value +"' ORDER BY use_time LIMIT 1;
так не сработает?

Если будет ошибка то мб
select id, login, proxy FROM acc WHERE STATUS=\'"+ project.Variables["status_bd"].Value +"\' ORDER BY use_time LIMIT 1;
 
Последнее редактирование:
  • Спасибо
Реакции: Kokos

Kokos

Client
Регистрация
05.09.2019
Сообщения
117
Благодарностей
56
Баллы
28
между плюсами и кавычками пробел есть?

P.S.: если вы совершаете коннект из шарпа, то лучше предоставьте код инициализации переменных и подключения целиком, используя возможности форума для постинга кода, чтобы не потерялись спецсимволы.
Пробовал уже всяко и с пробелом и без, если я в переменную добавляю не просто ban , а 'ban' то все отрабатывает как надо, но как вставить в переменную еще дополнительно в самом запросе эти ' '
 

Platon

Client
Регистрация
26.09.2015
Сообщения
260
Благодарностей
122
Баллы
43
Попробуйте:
select id, login, proxy FROM acc WHERE STATUS='{-Variable.status_bd-}' ORDER BY use_time LIMIT 1;
или так:
select id, login, proxy FROM acc WHERE STATUS=`{-Variable.status_bd-}` ORDER BY use_time LIMIT 1;
или так:
select id, login, proxy FROM acc WHERE STATUS={-Variable.status_bd-} ORDER BY use_time LIMIT 1;
 

ebrwebrw

Client
Регистрация
20.08.2018
Сообщения
221
Благодарностей
164
Баллы
43
Попробуйте:
select id, login, proxy FROM acc WHERE STATUS='{-Variable.status_bd-}' ORDER BY use_time LIMIT 1;
или так:
select id, login, proxy FROM acc WHERE STATUS=`{-Variable.status_bd-}` ORDER BY use_time LIMIT 1;
или так:
select id, login, proxy FROM acc WHERE STATUS={-Variable.status_bd-} ORDER BY use_time LIMIT 1;
Такие переменные в C# раньше в ZP не обрабатывались, только в PM, что то изменилось?
 
  • Спасибо
Реакции: Kokos

Platon

Client
Регистрация
26.09.2015
Сообщения
260
Благодарностей
122
Баллы
43

Kokos

Client
Регистрация
05.09.2019
Сообщения
117
Благодарностей
56
Баллы
28
select id, login, proxy FROM acc WHERE STATUS='"+ project.Variables["status_bd"].Value +"' ORDER BY use_time LIMIT 1;
так не сработает?

Если будет ошибка то мб
select id, login, proxy FROM acc WHERE STATUS=\'"+ project.Variables["status_bd"].Value +"\' ORDER BY use_time LIMIT 1;
Попробовал не хочет, Как только ставишь какие то значки вокруг переменной в запросе, начинает ругаться на эти значки ((, а тут просто не видит переменную.
 

WebBot

Client
Регистрация
04.04.2015
Сообщения
1 763
Благодарностей
1 391
Баллы
113
Вы пишите на c# ? или хотите подсунуть запрос с переменной стандартному кубику?

Если в коде то так:

string query = "select id, login, proxy FROM acc WHERE STATUS= '"+ project.Variables["status_bd"].Value +"' ORDER BY use_time LIMIT 1";
 
  • Спасибо
Реакции: Kokos

Kokos

Client
Регистрация
05.09.2019
Сообщения
117
Благодарностей
56
Баллы
28
ebrwebrw, WebBot спасибо большое, полночи просидел , сейчас только увидел, что не так ставил кавычки
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)