Maria DB 10.11 - не используются параметры в запросе при отправке запроса

refrain

Client
Регистрация
15.05.2021
Сообщения
28
Благодарностей
16
Баллы
3
На сайте обновил maria db до 10.11 - в итоге сначала не мог авторизоваться в БД, пришлось ставить драйвер https://dev.mysql.com/downloads/connector/odbc/ и проходить авторизацию по гайду https://zennolab.com/discussion/threads/problema-s-podkljucheniem-k-bd.110405/#post-733997 с той только разницей что здесь MySQL ODBC используется.

Далее возникла проблема с использованием параметров (т.е. данных из переменных) в запросах. Данные просто не подставляются в запрос.

117369


С этой проблемой ранее сталкивались здесь на форуме, но к сожалению, решение не было опубликовано.

Если в запрос подставлять номер из переменной @id вручную, то запрос выполняется и ответ приходит. Если же включаю "использовать параметры в запросе", то приходит пустой ответ.

Пожалуйста, помогите решить проблему.
 
Последнее редактирование:

refrain

Client
Регистрация
15.05.2021
Сообщения
28
Благодарностей
16
Баллы
3
Судя по всему проблема решается именно отключением "использовать параметры в запросе" и просто вставлять переменную в запрос там, где вам надо.

117372
 

ZULI

Client
Регистрация
09.09.2020
Сообщения
423
Благодарностей
165
Баллы
43
Судя по всему проблема решается именно отключением "использовать параметры в запросе" и просто вставлять переменную в запрос там, где вам надо.
Так даже лучше, более понятно что за запрос, зачем вообще эту штуку с параметрами придумали
 

refrain

Client
Регистрация
15.05.2021
Сообщения
28
Благодарностей
16
Баллы
3
штука с параметрами как оказалось делает очень даже полезную вещь при работе с текстом, в котором присутствуют символы, а именно - экранирование символов. Решение выше походит только если в тексте при отправке запроса нет спец. символов.


Так вот, из-за этого драйвера mysql ODBC не работают параметры, а соответственно не работает и экранирование, что для меня проблема большая, потому что символов в тексте куча. Я уже весь форум перерыл в попытке решить проблему. Пришел к выводу что экранировать нужно через кубик с кодом (?)


project.Variables["СтрокаДляБД"].Value = project.Variables["СтрокаДляБД"].Value.Replace("\"", "\"\"");

- всё равно не помогло. В ручную каждый символ экранировать - это просто пытка.

Сейчас еще попробую удалять ненужные символы из текста и оставлять только необходимые и экранировать их.

Текст с разметкой html.

Помогите.
 

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