ODataDB Change History
Version 5.2, May 5, 2025
Improvements
- The ODataDB package now includes a Dockerfile and batch files for managing ODataDB Docker images and containers.
- ODataDB listens on all IP addresses when running in a container.
Version 5.1, April 30, 2025
Licensing Changes
- Introduced a dual licensing model:
- The free edition is now licensed under the MIT License.
- The enterprise edition is licensed under the updated End-User License Agreement (EULA).
- The free edition now supports up to five connected users per database.
Breaking Changes
- Removed the local CHM help file; please use the online documentation instead.
- Discontinued support for DB2 and NuoDB.
Improvements
- Updated application examples for 2025.
- Updated data providers: SqlClient, MySqlConnector, Npgsql, and SQLite.
- The
display_name
of columns and parameters with XML-encoded characters (like_x0020_
) now includes the source field name.
Bug Fixes
- ODataDB now uses double quotes instead of single quotes in some SQL commands.
- ODataDB correctly decodes names that contain XML-encoded characters like
_x0020_
.
Version 5.0, May 7, 2024
Breaking Changes
- ODataDB 5.0 requires ASP.NET Core 8.0.
- ODataDB 5.0 no longer supports Microsoft Internet Explorer.
- ODataDB 5.0 excludes data providers for Oracle Database and SQLite (these can be installed separately).
- The
EditRoots
key has been converted to a section that includes edit roots along with the root pages; theEditPages
section has been removed. - The JavaScript client now requires browser support for JavaScript modules.
- The ODataDB package includes new
wwwroot
files and application settings. Sample files have been excluded to facilitate production use out of the box.
New Features
- A new
setup.exe
wizard simplifies the configuration of IIS websites, applications, Windows services, and SSL certificates on Windows. - ODataDB now offers a new Windows installer package, which we recommend for Windows installations.
- ODataDB supports JWT authentication and allows configuration of login, sign-in, and sign-up pages.
- Users can authenticate via stored procedures and manage user roles. For example, new users can sign up and log in as buyers or sellers, with roles like "buyer" and "seller" enabling tailored feature access.
- ODataDB automatically replaces the
<base href="/" />
tag for IIS applications, allowing the samewwwroot
files to be used across IIS websites, applications, Windows services, and console applications. - Developers can rename API objects through the
ApiNameReplacements
section in the connection configuration. For instance, you can change a generated name like "view_money_transactions" to "transactions". - ODataDB automatically detects available SSL certificates and activates HTTPS endpoints on Windows.
- ODataDB automatically redirects to HTTPS endpoints when both HTTP and HTTPS endpoints are available.
- ODataDB allows configuration of the default port.
WhereByDefault
handlers specify columns used as default filters.HideByDefault
handlers define columns and parameters that are hidden by default.- ODataDB enables changing the server, databases, and ports in a connection (if enabled). For example, you can connect to the
AzureDemo100
database on thedb.savetodb.com
server at port 1433 using a URL like/edit/mssql:db.savetodb.com,1433,AzureDemo100/
. - The index page displays available connections when the connection database is
master
,mysql
, orpostgres
. - The JavaScript client now supports a dark theme.
- The JavaScript client features a left sidebar for quick connections to any object.
- The JavaScript client allows table filtering.
- The JavaScript client supports table views (use the SaveToDB add-in to create and save views).
- The JavaScript client includes an icon to view object descriptions.
Improvements
- ODataDB supports using the connection name as the first segment and the API root as the second segment of endpoints. You can use endpoints like /
<root>
/<connection>
/<query>
and /<connection>
/<root>
/<query>
. For example: https://odatadb/edit/mssql/ and https://odatadb/mssql/edit/. DoNotAddValidationLists
handlers also disable automatic configuration of parameter value lists.- ODataDB uses the configuration table schema as the default schema for configured objects.
- ODataDB treats MySQL
tinyint(1)
as a boolean type. - ODataDB detects stored procedure column types by edit objects.
- ODataDB returns an array of columns for empty results from stored procedures with unknown column sets.
- The
RowNumber
columns are hidden by default. - ODataDB supports the
ASPNETCORE_WEBROOT
environment variable to define thewebroot
. - ODataDB allows configuration of the ASP.NET application path base using the
ApplicationPathBase
setting. - ODataDB can serve API endpoints even if the
wwwroot
folder is specified or does not exist.
Bug Fixes
- Fixed an issue where MySqlConnectorNet threw
_dataCache
related exceptions on Linux. - ODataDB no longer encodes line-break characters in metadata results.
Version 4.7, July 12, 2023
Improvements
- Enhanced exception handling.
Version 4.6, April 10, 2023
Improvements
- ODataDB now supports MySQL objects with empty schemas, using the schema of the active connection in such cases.
- Improved performance for loading SQL Server metadata.
Version 4.5, February 21, 2023
New Features
- ODataDB generates value lists based on MySQL and PostgreSQL ENUM values.
- ODataDB supports the MySQL SET data type.
- ODataDB converts MySQL
binary(16)
andvarbinary(16)
data to GUID format whenCOLUMN_DEFAULT
containsuuid_to_bin(uuid())
,uuid_to_bin(uuid(),0)
, oruuid_to_bin(uuid(),1)
functions.
Improvements
- ODataDB now uses the MySql.Data.MySqlClient data provider installed on the system, rather than the version shipped with the application. This allows for the installation and use of the latest version of the provider: MySQL Connector/NET.
- ODataDB dynamically replaces the missing MySql.Data.MySqlClient data provider with the built-in MySqlConnector provider.
- Improved performance for loading MySQL 8 metadata.
Bug Fixes
- Resolved various exceptions when connecting to MySQL 8 using the MySql.Data.MySqlClient.
Version 4.4, January 23, 2023
Improvements
- Updated ODataDB examples for 2023.
- Updated the .NET and .NET Framework data providers for Snowflake.
- Updated the registration utility.
Version 4.3, December 13, 2022
Improvements
- ODataDB now supports language-specific edit pages.
- Added special edit pages for Simplified Chinese, Traditional Chinese, Japanese, and Korean.
- Introduced a new dark theme.
- Released SaveToDB Frameworks and samples under the MIT license.
Version 4.2, October 5, 2022
Bug Fixes
- ODataDB now correctly detects SQLite and MySQL datetime types in SQL code results via the .NET providers as strings.
Version 4.1, August 17, 2022
Breaking Changes
- ODataDB no longer activates saving changes for views, procedures, and SQL code objects based on joining multiple tables. To save changes for such objects, you must manually set the target table in the
xls.objects
table. - Properties and parameters are assigned the
Edm.Untyped
type (added in OData 4.01) when the data type cannot be detected. - Lists of values based on tables and views are always published as functions.
- Fields of views and procedures based on multiple tables are marked as calculated.
- Context parameters for client applications are included in object properties (e.g.,
rownum
). - If an object has a single insert procedure (Merge mode), the result object is published as a ComplexType instead of an EntityType.
Improvements
- Added translations for SQLite with empty schemas and object names to the Default schema.
- Improved automatic detection of fields in lists of values (reduced priority of Guid and Char(36)).
- References to annotation definitions are excluded from the model if no annotation output is required.
Bug Fixes
- ODataDB disables saving by procedures if the
_change
handler is set. - ODataDB no longer saves JSON form data.
- Fixed an issue where redirecting to the home page did not work when changing the base property of HTML pages.
Version 4.0, July 5, 2022
Changes in End-User License Agreement
ODataDB includes an updated End-User License Agreement.
The most important change:
"Consent to Be Included in the Client List: By purchasing the software on behalf of your company, you implicitly consent to the listing of your company name as our customer. You can revoke this consent at any time by submitting a request."
New Features
- ODataDB is now available in Simplified Chinese, Traditional Chinese, Japanese, and Korean.
- ODataDB supports language codes up to 10 characters. For example, you can use
zh-cn
,zh-hans
, andzh-hans-cn
. Preferzh-hans
andzh-hant
for Chinese. - ODataDB features a completely new Developer Guide.
- ODataDB fully supports SQL codes in all configuration objects.
- ODataDB includes a special package for .NET Framework 4.7.2.
- ODataDB supports the Microsoft.Data.SqlClient provider.
- ODataDB introduces new HTTP endpoints to manage the console application:
/v4/$stop
,/v4/$show
,/v4/$hide
. To enable these commands, setStopEnabled
to true in the application settings. - ODataDB supports the
$reloadMetadata=true
HTTP request parameter to reload database metadata. Users can press the Ctrl key and click the Reload button to refresh metadata in the built-in JavaScript client. - ODataDB supports the
$orderby
URL parameter. - ODataDB supports the
$binaryAsHex
URL parameter and thebinaryAsHex
parameter in the Prefer header. - ODataDB supports the
$bigNumbersAsString
URL parameter and thebigNumbersAsString
parameter in the Prefer header. - ODataDB supports the
$timezone
and$timezoneoffset
URL parameters, along with the same parameters in the Prefer header. - Configuration files now contain ODataDB settings in the ODataDB and ODataDBW groups.
- ODataDB introduces new configuration options:
MaxPageSize
,UppercaseNamesInLowercase
,DisableEditPageCache
,BinaryAsHex
,BigNumbersAsString
,TraceSQL
, andStopEnabled
. - ODataDB adds new connection configuration options:
AllowDatabaseChange
,Offline
, andHome
. - ODataDB includes a new header to disable caching:
Cache-control: no-cache, no-store, must-revalidate
. - ODataDB sorts table and view results by default, using primary keys, identity columns, or the complete output column set.
- Object metadata now includes annotations for configured object handlers.
- Developers can implement paging for stored procedures programmatically using pairs of parameters:
top
andskip
,limit
andoffset
,$top
and$skip
, or$limit
and$offset
. - The built-in JavaScript client supports fixed columns (split/unsplit).
- The built-in JavaScript client allows execution of handlers for Actions and ContextMenu types.
- The built-in JavaScript client supports JSON parameters for edit procedures.
- The built-in JavaScript client supports bulk update procedures.
Improvements
- Upgraded the ODataDB .NET platform to .NET 6.0.
- ODataDB now supports SaveToDB Framework 10.
- The built-in JavaScript client has undergone significant CSS updates.
- ODataDB converts empty values of non-string data types to NULL.
- ODataDB no longer adds @-fields of SQL pseudo-code to SELECT output fields. For example, it translates
id, state, @country_id
toSELECT id, state FROM ... WHERE country_id = @country_id
. - Stored procedure and SQL code parameters can now use XML-encoded characters to retrieve values from underlying columns. For example, the
@company_x0020_name
parameter retrieves the value of the "company name" field. - ODataDB avoids using the
IncludeInServiceDocument
annotation to prevent issues with clients using older versions of Microsoft ODataLib.
Bug Fixes
- ODataDB no longer detects SQL Data Warehouse objects incorrectly.
- ODataDB now returns a proper content-type header for some text or HTML responses.
Contents
- Version 5.2, May 5, 2025
- Version 5.1, April 30, 2025
- Version 5.0, May 7, 2024
- Version 4.7, July 12, 2023
- Version 4.6, April 10, 2023
- Version 4.5, February 21, 2023
- Version 4.4, January 23, 2023
- Version 4.3, December 13, 2022
- Version 4.2, October 5, 2022
- Version 4.1, August 17, 2022
- Version 4.0, July 5, 2022