История изменений ODataDB
Версия 5.2 от 05.05.2025
Улучшения:
- Добавлен файл Dockerfile и командные файлы для управления образами и контейнерами Docker.
- При запуске из контейнера теперь прослушиваются все IP-адреса.
Версия 5.1 от 30.04.2025
Изменения в лицензировании:
- ODataDB теперь распространяется по модели двойного лицензирования:
- Редакция Free доступна по лицензии MIT.
- Редакция Enterprise - по обновлённому лицензионному соглашению конечного пользователя (EULA).
- Редакция Free поддерживает до пяти подключений пользователей к одной базе данных.
Важные изменения:
- Локальный CHM-файл справки заменён на онлайн-документацию.
- Прекращена поддержка баз данных DB2 и NuoDB.
Улучшения:
- Если поле или параметр содержит кодированные символы, такие как
_x0020_, автоматически добавляется значение display_name с декодированным именем. - Обновлены примеры приложений на 2025 год.
- Обновлены провайдеры данных SqlClient, MySqlConnector, Npgsql и SQLite.
Исправленные ошибки:
- ODataDB использует двойные кавычки для значений параметров в некоторых SQL-запросах вместо одинарных.
- ODataDB неправильно декодирует имена, содержащие кодированные символы XML, такие как
_x0020_.
Версия 5.0 от 07.05.2024
Важные изменения:
- Требуется ASP.NET Core 8.0.
- Microsoft Internet Explorer больше не поддерживается.
- ODataDB 5.0 не включает поставщики данных для Oracle Database и SQLite (их можно установить отдельно).
- Ключ
EditRootsстал секцией и включает корневые сегменты и соответствующие страницы. СекцияEditPagesудалена. - Для работы клиента JavaScript требуется поддержка модулей JavaScript.
- Установочные пакеты ODataDB теперь включают новые настройки приложения и файлы каталога wwwroot. Примеры исключены для упрощения начальной настройки.
Новые возможности:
- Новый мастер
setup.exeпозволяет настраивать веб-сайты и приложения IIS, сервисы Windows и сертификаты SSL в Windows. Рекомендуем использовать именно его. - ODataDB включает новый пакет установщика для Windows.
- В ODataDB добавлена схема аутентификации JWT и настройки страниц входа и регистрации новых пользователей.
- Поддержка аутентификации пользователей через хранимые процедуры с ролями. Например, пользователи могут регистрироваться как покупатели или продавцы и получать соответствующие роли
buyerс разными возможностями. - ODataDB автоматически заменяет тег
<base href="/" />для приложений IIS, что позволяет использовать один и тот же каталог wwwroot для веб-сайтов, приложений IIS, сервисов Windows и консольных приложений. - Разработчики могут настроить изменение имен объектов для сервиса в секции
ApiNameReplacementsнастройки подключения. Например, можно изменить имя "view_money_transactions" на "transactions". - ODataDB автоматически определяет наличие SSL-сертификата в Windows и использует конечные точки HTTPS.
- ODataDB автоматически перенаправляет на конечные точки HTTPS, если доступны как HTTP, так и HTTPS.
- ODataDB позволяет настроить порт по умолчанию.
- Обработчики
WhereByDefaultзадают колонки, которые используются в качестве фильтров по умолчанию. - Обработчики
HideByDefaultпозволяют скрывать колонки и параметры по умолчанию. - ODataDB позволяет изменять сервер, базу данных и порт для подключения (если разрешено). Например, можно использовать адрес типа
/edit/mssql:db.savetodb.com,1433,AzureDemo100/для подключения к базе данныхAzureDemo100на сервереdb.savetodb.comпо порту 1433. - Домашняя страница подключений к базам данных
master,mysqlиpostgresпозволяет выбрать доступную базу данных на сервере. - Клиент JavaScript поддерживает темную тему.
- Клиент JavaScript отображает панель слева для быстрого подключения к любому объекту.
- Клиент JavaScript позволяет фильтровать таблицы.
- Клиент JavaScript поддерживает виды таблиц (используйте надстройку SaveToDB для создания и сохранения видов).
- Клиент JavaScript отображает иконку с описанием таблицы из базы данных.
Улучшения:
- ODataDB поддерживает имя подключения как первый сегмент. Теперь поддерживаются оба варианта: /
<root>/<connection>/<query>и /<connection>/<root>/<query>. Например: https://odatadb/edit/mssql/ и https://odatadb/mssql/edit/. - Обработчики
DoNotAddValidationListsотключают автоматическое создание списков значений параметров. - Схема таблиц настройки приложений используется для поиска объектов без заданных схем.
- Тип tinyint(1) в MySQL трактуется как boolean.
- ODataDB определяет типы колонок хранимых процедур по объектам сохранения изменений.
- ODataDB возвращает массив имен колонок для пустых результатов хранимых процедур с неизвестным набором выходных колонок.
- Поле
RowNumberскрыто по умолчанию. - ODataDB поддерживает переменную среды
ASPNETCORE_WEBROOTдля определения папкиwebroot. - ODataDB позволяет задать базовый путь приложения ASP.NET в свойстве
ApplicationPathBase. - ODataDB может обслуживать конечные точки API без папки
wwwroot.
Исправленные ошибки:
- MySqlConnectorNet в Linux вызывает исключение, связанное с _dataCache.
- ODataDB не экранирует переводы строк в мета-данных.
Версия 4.7 от 12.07.2023
Улучшения:
- Улучшена обработка исключений.
Версия 4.6 от 10.04.2023
Улучшения:
- ODataDB позволяет использовать объекты MySQL с пустыми схемами, применяя схему активного соединения.
- Повышена производительность загрузки метаданных SQL Server.
Версия 4.5 от 21.02.2023
Новые возможности:
- ODataDB генерирует списки значений на основе ENUM в MySQL и PostgreSQL.
- ODataDB поддерживает тип данных SET в MySQL.
- ODataDB преобразует данные MySQL
binary(16)иvarbinary(16)в формат GUID, если вCOLUMN_DEFAULTиспользуются функцииuuid_to_bin(uuid()),uuid_to_bin(uuid(),0)илиuuid_to_bin(uuid(),1).
Улучшения:
- ODataDB использует поставщик данных
MySql.Data.MySqlClient, установленный в системе, вместо встроенного. Это позволяет использовать актуальную версию поставщика: MySQL Connector/NET. - ODataDB динамически заменяет отсутствующий поставщик
MySql.Data.MySqlClientна встроенныйMySqlConnector. - Улучшена производительность получения метаданных MySQL 8.
Исправленные ошибки:
- Подключение к MySQL 8 с использованием
MySql.Data.MySqlClientвызывает различные исключения.
Версия 4.4 от 23.01.2023
Улучшения:
- Обновлены примеры приложений на 2023 год.
- Обновлены поставщик данных .NET и .NET Framework для Snowflake.
- Обновлена утилита регистрации.
Версия 4.3 от 13.12.2022
Улучшения:
- ODataDB поддерживает страницы редактирования, специфичные для языка.
- Включены специальные страницы редактирования для упрощенного и традиционного китайского, японского и корейского языков.
- Добавлена новая темная тема.
- Примеры и пакеты SaveToDB Framework выпущены под лицензией MIT.
Версия 4.2 от 05.10.2022
Исправленные ошибки:
- Значения типа даты и времени в SQLite и MySQL через .NET выводятся в виде строк.
Версия 4.1 от 17.08.2022
Критические изменения:
- ODataDB не активирует сохранение изменений для представлений, процедур и SQL-кода, основанного на соединении нескольких таблиц. Для сохранения изменений таких объектов необходимо вручную задать целевую таблицу в таблице
xls.objects. - Если тип данных свойства или параметра не может быть определен, используется тип
Edm.Untyped(добавлен в OData 4.01). - Списки значений на основе таблиц и представлений всегда публикуются как функции.
- Поля представлений и процедур на основе нескольких таблиц помечаются как расчетные.
- Контекстные параметры для клиентских приложений включаются в состав свойств объектов (например,
rownum). - Если для объекта определена единственная процедура вставки (режим Merge), то объект результата выводится как
ComplexType, а неEntityType.
Улучшения:
- Перевод в SQLite с пустыми схемами и именами объектов добавляется в схему Default.
- Улучшено определение полей для списков значений (понижен приоритет
GuidиChar(36)). - Из модели исключаются ссылки на определение аннотаций, если вывод аннотаций не требуется.
Исправленные ошибки:
- ODataDB отключает сохранение процедурами, если задан обработчик изменений
_change. - ODataDB не сохраняет изменения данных из форм JSON.
- Не работает редирект на домашнюю страницу при изменении свойства
baseв HTML-страницах.
Версия 4.0 от 05.07.2022
ODataDB включает измененное лицензионное соглашение.
Наиболее важное изменение:
"Приобретая программу от имени вашей компании, вы даете неявное согласие на указание имени вашей компании как нашего клиента. Вы можете отозвать ваше согласие в любой момент, направив запрос по электронной почте."
Новые возможности:
- Добавлена документация ODataDB на русском языке.
- Включено новое Руководство разработчика.
- ODataDB доступен на упрощенном китайском, традиционном китайском, японском и корейском языках.
- Поддерживаются языковые коды длиной до 10 символов. Например, можно использовать
zh-cn,zh-hansиzh-hans-cn.zh-hansиzh-hantявляются предпочтительными для китайского языка. - ODataDB поддерживает SQL-код во всех таблицах настройки.
- ODataDB поддерживает .NET Framework 4.7.2.
- ODataDB поддерживает провайдер
Microsoft.Data.SqlClient. - ODataDB поддерживает конечные точки управления приложением:
/v4/$stop,/v4/$show,/v4/$hide. Для включения поддержки команд установитеStopEnabledвtrueв файле настроек приложения. - ODataDB поддерживает параметр
$reloadMetadata=trueв HTTP-запросах для обновления метаданных базы данных. Пользователи могут нажатьCtrlи кликнуть на кнопке Reload для обновления метаданных в клиенте JavaScript. - ODataDB поддерживает параметр
$orderbyв URL-запросах. - ODataDB поддерживает параметр
$binaryAsHexв URL-запросах и параметрbinaryAsHexв заголовкеPrefer. - ODataDB поддерживает параметр
$bigNumbersAsStringв URL-запросах и параметрbigNumbersAsStringв заголовкеPrefer. - ODataDB поддерживает параметры
$timezoneи$timezoneoffsetв URL-запросах и заголовкеPrefer. - Настройки ODataDB в файле конфигурации выделены в группы
ODataDBиODataDBW. - ODataDB поддерживает новые опции в файле конфигурации:
MaxPageSize,UppercaseNamesInLowercase,DisableEditPageCache,BinaryAsHex,BigNumbersAsString,TraceSQL,StopEnabled. - ODataDB поддерживает новые опции в строках подключения в файле конфигурации:
AllowDatabaseChange,Offline,Home. - ODataDB добавляет заголовок для отключения кэширования:
Cache-control: no-cache, no-store, must-revalidate. - Метаданные объектов включают аннотации для настроенных обработчиков событий.
- ODataDB сортирует результаты таблиц и представлений по умолчанию. Для сортировки могут использоваться первичные ключи, колонки identity или полный набор выходных колонок.
- Разработчики могут реализовать разбивку на страницы для хранимых процедур, используя пары параметров:
topиskip,limitиoffset,$topи$skipили$limitи$offset. - Клиент JavaScript поддерживает фиксацию колонок.
- Клиент JavaScript позволяет выполнять обработчики типа Actions и ContextMenu.
- Клиент JavaScript поддерживает JSON-параметры процедур редактирования.
- Клиент JavaScript поддерживает процедуры обновления одним запросом (bulk update).
Улучшения:
- Платформа ODataDB обновлена до .NET 6.0.
- ODataDB поддерживает SaveToDB Framework 10.
- Клиент JavaScript значительно переработан, включая CSS.
- ODataDB преобразует пустые значения нестроковых типов в NULL.
- ODataDB не добавляет поля @ псевдокода SQL в выходные поля SELECT. Например,
id, state, @country_idпреобразуется вSELECT id, state FROM ... WHERE country_id = @country_id. - Параметры хранимых процедур и SQL-кода могут использовать символы в кодировке XML для получения значений из базовых колонок. Например, параметр
@company_x0020_nameполучает значение колонки "company name". - ODataDB не использует аннотацию
IncludeInServiceDocumentдля исключения ошибок в клиентах, использующих предыдущие версии Microsoft ODataLib.
Исправленные ошибки:
- ODataDB не читает объекты SQL Data Warehouse.
- ODataDB возвращает пустой заголовок
content-typeдля некоторых ответовtextиHTML.