powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / возможно ли запросить SQL-диалект подключения?
13 сообщений из 63, страница 3 из 3
возможно ли запросить SQL-диалект подключения?
    #39808254
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий,

это разные вещи.

DIALECT_* - это с какой структурой работаем (sqlda vs xsqlda). Одновременно он совпадает с SQL-диалектом в API-вызовах. DIALECT_xsqlda равен DIALECT_V5, т.е. XSQLDA ассоциируется со всеми новыми API-вызовами, где есть диалект. А DIALECT_sqlda равен нулю и ассоциируется со старыми API-вызовами (без _dsql_ в названии). В ФБ-сервере нулевой диалект трактуется как отсутствующий, т.е. клиент ничего не знает о диалектах. Для сервера есть два вида клиентов: (dialect == DIALECT_sqlda) и (dialect >= DIALECT_xsqlda).

А SQLDA_VERSION* - это версия XSQLDA (у SQLDA нет поля версии). Причем существует только SQLDA_VERSION1, упоминаний SQLDA_VERSION2 у нас нет от слова совсем. У борманов SQLDA_VERSION2 это скорее всего длинные метаданные.

Как-то так (с)
...
Рейтинг: 0 / 0
возможно ли запросить SQL-диалект подключения?
    #39808258
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitr, спасибо!
немного прояснилось.

для 4-ки с длинными идентификаторами метаданных
не планируется новая версия XSQLDA?

ибо в текущей версии XSQLVAR под идентификаторы
отводится жестко 32 символа (31 + #0)
...
Рейтинг: 0 / 0
возможно ли запросить SQL-диалект подключения?
    #39808259
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящийв смысле, всегда юзается XSQLDA, независимо от того, что передаётся в da_version ?

судя по всему да https://github.com/FirebirdSQL/firebird/blob/B3_0_Release/src/yvalve/why.cpp#L2141

Мимопроходящийкстати, в недрах IBX наблюдаю такое:

SQLDA диалект и версия это разные вещи. Первое относится к тому какая структура используется

https://github.com/FirebirdSQL/firebird/blob/B3_0_Release/src/dsql/sqlda.h

или

https://github.com/FirebirdSQL/firebird/blob/B3_0_Release/src/dsql/sqlda_pub.h

Если посмотреть внимательней, то поле version есть только в XSQLDA. Очевидно Борманы его задействовали когда длину идентификаторов увеличили (они это раньше сделали то ли в 7.0, то ли в 7.1, то ли в 7.5)
...
Рейтинг: 0 / 0
возможно ли запросить SQL-диалект подключения?
    #39808261
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну вот пока писал ответили :)
...
Рейтинг: 0 / 0
возможно ли запросить SQL-диалект подключения?
    #39808262
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дабы всё упростить (или усложнить, кому как) - уточню: сервер понятия не имеет про SQLDA\XSQLDA, про них знает только fbclient.
...
Рейтинг: 0 / 0
возможно ли запросить SQL-диалект подключения?
    #39808267
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitrА SQLDA_VERSION* - это версия XSQLDA (у SQLDA нет поля версии). Причем существует только SQLDA_VERSION1, упоминаний SQLDA_VERSION2 у нас нет от слова совсем.как оказалось, в моём IBX тоже юзается исключительно SQLDA_VERSION1, а SQLDA_VERSION2 только задекларирован, но нигде не фигурирует.
кстати, комментарии опосля декларации вводят в заблуждение,
ибо утверждается, что SQLDA_VERSION1 это " pre V6.0 SQLDA ", а
SQLDA_VERSION2 это " V6.0 SQLDA ".
и то, и другое неверно .
...
Рейтинг: 0 / 0
возможно ли запросить SQL-диалект подключения?
    #39808272
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МимопроходящийSQLDA_VERSION2 только задекларирован, но нигде не фигурирует.

А сама XSQLDA2 там задекларирована?

Я сильно надеюсь, что в Firebird поддержка удлинённых имён (если) будет сделана либо точно
так же, либо нормально.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
возможно ли запросить SQL-диалект подключения?
    #39808274
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий,

да всё верно, глянул исходники новых IBX, там вся разница в том что для XSQLDA2 они используют XSQLVAR2, где длина идентификаторов 68 байт. В остальном всё одинаково.
...
Рейтинг: 0 / 0
возможно ли запросить SQL-диалект подключения?
    #39808275
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
30.04.2019 13:00, Симонов Денис пишет:
> да всё верно, глянул исходники новых IBX, там вся разница в том что для XSQLDA2 они используют XSQLVAR2, где длина идентификаторов 68 байт. В остальном всё одинаково.

нет бы сразу заюзать PChar, вместо статичного массива Char.
оно конечно тоже имеет тенденцию к геморрою, но другого плана.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
возможно ли запросить SQL-диалект подключения?
    #39808281
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovЯ сильно надеюсь, что в Firebird поддержка удлинённых имён (если) будет сделана либо точно
так же, либо нормально.

она и сделана, в новом API, но на структуру XSQLDA это ложится плохо. У тебя есть мысли как это можно было бы реализовать без геморроя?
...
Рейтинг: 0 / 0
возможно ли запросить SQL-диалект подключения?
    #39808293
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисУ тебя есть мысли как это можно было бы реализовать без геморроя?

Как и сказал МП: вполне нормально будет PChar, указывающий на внутренние структуры
клиента. Заодно зарезервировать место под схему, алиасы и прочую дребедень. О выравнивании
можно не заботиться, оно всё равно загублено sqldata и sqlind. Зато хорошо бы позаботиться
о совместимости с XSQLVAR1 про которую Борланды забыли.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
возможно ли запросить SQL-диалект подключения?
    #39808296
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Совместимость с Interbase API это хорошо: позволит использовать готовый код.
Совместимость с XSQLVAR1 (в том числе по размеру) это хорошо: позволит создавать
универсальный код.


Если нет времени всё это хорошо продумать, то лучше вообще не париться, а тупо обрезать не
влезшие имена. Меньшее зло.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
возможно ли запросить SQL-диалект подключения?
    #39808315
Коваленко Дмитрий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovЕсли нет времени всё это хорошо продумать, то лучше вообще не париться, а тупо обрезать не
влезшие имена. Меньшее зло.

Да, как-то так :)

[spoiler]
YouTube Video
...
Рейтинг: 0 / 0
13 сообщений из 63, страница 3 из 3
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / возможно ли запросить SQL-диалект подключения?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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