powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Подмена запроса на стороне сервера Firebird
25 сообщений из 80, страница 2 из 4
Подмена запроса на стороне сервера Firebird
    #40086689
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey_RedCat
Когда создаются объекты без кавычек астериск ругается
Код: plaintext
1.
[Jul 28 08:32:19] WARNING[8771]: res_config_odbc.c:1224 require_odbc:
 Realtime table sippeers@Firebird requires column 'name', but that column does not exist!
Потому-что сервер бд возвращает имена в верхнем регистре
Предупреждение это не всегда ошибка. Часто это "вообще не проблема".
То, что разработчики Астериска не умеют(?) проверять метаданные ещё не означат, что софтина не будет работать .
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086690
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fr0sT-BrutalНо вообще это косяк софтины (астериска), может, им направить реквест?

Он же работает у туевой хучи людей. Логичнее таки предположить, что косяк у аффтара.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086693
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey_RedCat,

короче, надо пересоздать базу, или объекты в ней, не используя двойные кавычки в именах. И всё.
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086701
Andrey_RedCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov

Fr0sT-BrutalНо вообще это косяк софтины (астериска), может, им направить реквест?

Он же работает у туевой хучи людей. Логичнее таки предположить, что косяк у аффтара.

Абсолютно этого не отрицаю, поэтому и пришел на форум к профессионалам, т.к. сам очень далек от работы с бд, максимум создать базу с 2мя-3мя таблицами и выполнять простейшие запросы из своего софта, не более того.
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086702
Andrey_RedCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Basil A. Sidorov
Andrey_RedCat
Когда создаются объекты без кавычек астериск ругается
Код: plaintext
1.
[Jul 28 08:32:19] WARNING[8771]: res_config_odbc.c:1224 require_odbc:
 Realtime table sippeers@Firebird requires column 'name', but that column does not exist!
Потому-что сервер бд возвращает имена в верхнем регистре
Предупреждение это не всегда ошибка. Часто это "вообще не проблема".
То, что разработчики Астериска не умеют(?) проверять метаданные ещё не означат, что софтина не будет работать .

Кстати да, почему-то сип транки завелись, т.е. получают из таблицы данные, IAX пока не хочет, но буду посмотреть еще, возможно косяк где-то в настройке астера
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086800
Andrey_RedCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Но все равно кривовато работает как-то, как-будто не все параметры вычитывает из базы, а как в базе с диалектом 1 назначить имена столбцов например session-timers(ругается на дефис) и двойные кавычки не спасают(вернее ставишь двойные кавычки ругается ibexpert, говорит Invalid token). Я все-таки хочу попробовать создать новую базу с диалектом 1 и посмотреть
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086804
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в 1-м диалекте можно использовать только a..z, 0..9, $, _.
пользуй вместо дефиса подчёркивание.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086806
Fr0sT-Brutal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov

Он же работает у туевой хучи людей. Логичнее таки предположить, что косяк у аффтара.

Может, в связке с ФБ никто не юзает
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086814
Andrey_RedCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мимопроходящий

в 1-м диалекте можно использовать только a..z, 0..9, $, _.
пользуй вместо дефиса подчёркивание.

Значит мне не подойдет 1й диалект, т.к. название столбцов я менять не могу, значит пока остается открытым вопрос, или можно даже сказать по другому, возможно-ли создать триггер который будет переворачивать результаты выполнения запроса в нижний регистр? Например при запросе списка столбцов чтоб результат был не ID,NAME,IPADDR,PORT... а id,name,ipaddr,port... Впринципе мне кажется теоритически это возможно, только я не нашел как ставить тригеры на SELECT, есть на INSERT,UPDATE,DELETE
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086819
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
28.07.2021 16:18, Andrey_RedCat пишет:
> только я не нашел как ставить тригеры на SELECT

никак
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086820
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы как-то лихо спрыгнули с проблемы "идентификатор с запрещёнными символами" на проблему регистра.
Которая - вообще не проблема.

P.S.
А что - есть "базы" в которых вот прямо можно воткнуть дефис в идентификатор и никто ничего не станет вычитать, ругаясь на ошибки?
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086822
Andrey_RedCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мимопроходящий

28.07.2021 16:18, Andrey_RedCat пишет:
> только я не нашел как ставить тригеры на SELECT

никак

т.е получается на стороне сервера я ничего не могу сделать?
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086826
pastor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey_RedCat

т.е получается на стороне сервера я ничего не могу сделать?


Вы и на стороне клиента ничего даже не пытаетесь.

так какая разница?
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086828
Andrey_RedCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Basil A. Sidorov
Вы как-то лихо спрыгнули с проблемы "идентификатор с запрещёнными символами" на проблему регистра.
Которая - вообще не проблема.

P.S.
А что - есть "базы" в которых вот прямо можно воткнуть дефис в идентификатор и никто ничего не станет вычитать, ругаясь на ошибки?

Все-таки с регистрами проблема, на текущий момент для меня не решаемая. Думал поменять диалект, но и тут меня ждала засада в виде запрещенных символов. Пока сижу думаю, ищу информацию по триггерам, пытаюсь решить проблему с регистром
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086829
Andrey_RedCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pastor
Andrey_RedCat

т.е получается на стороне сервера я ничего не могу сделать?


Вы и на стороне клиента ничего даже не пытаетесь.

так какая разница?

А что я могу на стороне клиента, не ковыряясь в его исходниках и не пересобирая весь астериск? На сколько я знаю у астериска нельзя редактировать запросы без копания в исходном коде.
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086830
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня вопрос к ТС - базу и таблицы где создавали, в IBExpert?
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086831
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey_RedCatПока сижу думаю, ищу информацию по триггерам, пытаюсь решить проблему с регистром

Не ищи информацию по триггерам, это бесполезно. Читай FAQ по ссылке выше. Проверь
настройки своего ODBC DSN, там должен быть указан третий диалект. Как только у тебя начнут
сыпаться ошибки со стороны Firebird - ты на правильном пути.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086834
Andrey_RedCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Gallemar
У меня вопрос к ТС - базу и таблицы где создавали, в IBExpert?

Базу создавал в isql-fb, а таблицы, да в IBEXPERT
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086836
Andrey_RedCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov

Andrey_RedCatПока сижу думаю, ищу информацию по триггерам, пытаюсь решить проблему с регистром

Не ищи информацию по триггерам, это бесполезно. Читай FAQ по ссылке выше. Проверь
настройки своего ODBC DSN, там должен быть указан третий диалект. Как только у тебя начнут
сыпаться ошибки со стороны Firebird - ты на правильном пути.

А можно чуть подробнее?
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086837
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey_RedCat
Gallemar
У меня вопрос к ТС - базу и таблицы где создавали, в IBExpert?

Базу создавал в isql-fb, а таблицы, да в IBEXPERT


Таблицы также создайте в isql. Названия таблиц и прочих атрибутов в них вводите в нижнем регистре без кавычек. База в какой диалекте создана?
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086838
pastor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey_RedCat
pastor
пропущено...


Вы и на стороне клиента ничего даже не пытаетесь.

так какая разница?

А что я могу на стороне клиента, не ковыряясь в его исходниках и не пересобирая весь астериск? На сколько я знаю у астериска нельзя редактировать запросы без копания в исходном коде.


ответить на вопрос:
[Jul 28 08:10:11] WARNING[8805]: res_config_odbc.c:122 custom_prepare: SQL Prepare failed! [SELECT * FROM sippeers WHERE name = ? AND host = ?]
а вот это кто пишет?
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086844
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey_RedCat
Все-таки с регистрами проблема
Каким боком попытка использования идентификатора "session-timers" является проблемой регистра???
Не поленился заглянуть в доку MySQL, с которой Астериск, вроде как, обязан работать:Permitted characters in unquoted identifiers:
ASCII: [0-9,a-z,A-Z$_] (basic Latin letters, digits 0-9, dollar, underscore)
Extended: U+0080 .. U+FFFFДа, разработчики Астериска могут извратиться любым образом, но "меня опять терзают смутные сомнения", что дефис в идентификаторах им не требуется.
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086845
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey_RedCatА что я могу на стороне клиента, не ковыряясь в его исходниках и не пересобирая весь астериск?

А почему, собственно, "не ковыряясь в его исходниках"? Это самый надёжный способ
определить как им запросы формируются. Пересборка не требуется, достаточно понять почему
сыплются предупреждения и как формируются запросы, вызывающие ошибки.

Andrey_RedCatА можно чуть подробнее?

Какое слово из "настройки ODBC DSN" тебе непонятно?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086850
Andrey_RedCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Gallemar
Andrey_RedCat
пропущено...

Базу создавал в isql-fb, а таблицы, да в IBEXPERT


Таблицы также создайте в isql. Названия таблиц и прочих атрибутов в них вводите в нижнем регистре без кавычек. База в какой диалекте создана?

В третьем
...
Рейтинг: 0 / 0
Подмена запроса на стороне сервера Firebird
    #40086852
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey_RedCat,

ок. Тогда ваши действия такие:
1. Создаем таблицы в бд с диалектом 3 в нижнем регистре и без кавычек.
2. Проверяем как работает Астериск.
Пишем сюда о результатах, ошибки - в студию.
В случает ошибок создает бд в первом диалекте и таблицы в нижнем регистре и без кавычек.
Также проверяем. В настройках ODBC не забываем указывать диалект.
...
Рейтинг: 0 / 0
25 сообщений из 80, страница 2 из 4
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Подмена запроса на стороне сервера Firebird
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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