DBGate Change History

DBGate Change History

Version 3.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 3.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 reflects 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 3.0, May 7, 2024

Breaking Changes

  • DBGate 3.0 requires ASP.NET Core 8.0.
  • Microsoft Internet Explorer is no longer supported.
  • Data providers for Oracle Database and SQLite are not included; install them separately.
  • The EditRoots key is now a section that includes edit roots with root pages. The EditPages section has been removed.
  • The JavaScript client now requires browser support for JavaScript modules.
  • The DBGate package features new wwwroot files and application settings, with sample files excluded for streamlined production use.

New Features

  • A new setup.exe wizard simplifies the configuration of IIS websites, applications, Windows services, and SSL certificates on Windows.
  • A new Windows installer package is available; we recommend using this for Windows installations.
  • DBGate now supports JWT authentication and allows configuration of login, sign-in, and sign-up pages.
  • User authentication can be managed via stored procedures, supporting user roles. For example, new users can sign up and log in as buyers or sellers, utilizing roles to provide different features.
  • The <base href="/" /> tag for IIS applications is now automatically replaced, allowing the same wwwroot 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 example, change a generated name like "view_money_transactions" to "transactions."
  • DBGate automatically detects available SSL certificates and activates HTTPS endpoints on Windows.
  • Automatic redirection to HTTPS endpoints occurs when both HTTP and HTTPS endpoints are served.
  • You can now configure the default port.
  • WhereByDefault handlers define columns used as default where filters.
  • HideByDefault handlers specify columns and parameters that are hidden by default.
  • DBGate allows changes to server, databases, and ports in a connection (if enabled). For example, use a URL like /edit/mssql:db.savetodb.com,1433,AzureDemo100/ to connect to the AzureDemo100 database on the db.savetodb.com server at port 1433.
  • The index page displays available connections when the connection database is master, mysql, or postgres.
  • The JavaScript client now supports a dark theme.
  • The JavaScript client features a left sidebar for one-click connections to any object.
  • Table filtering is now available in the JavaScript client.
  • The JavaScript client supports table views (use the SaveToDB add-in to create and save views).
  • An icon is now available in the JavaScript client to read object descriptions.

Improvements

  • DBGate 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://dbgate/edit/mssql/ and https://dbgate/mssql/edit/.
  • DoNotAddValidationLists handlers also disable automatic configuration of parameter value lists.
  • The configuration table schema is now used as the default schema for configured objects.
  • DBGate treats MySQL tinyint(1) as a boolean.
  • DBGate detects stored procedure column types through edit objects.
  • For stored procedures with unknown column sets, DBGate returns an empty column array.
  • RowNumber columns are hidden by default.
  • DBGate supports the ASPNETCORE_WEBROOT environment variable to define the webroot.
  • You can configure the ASP.NET application path base using the ApplicationPathBase configuration value.
  • DBGate can serve API endpoints even if the wwwroot folder is specified or does not exist.

Bug Fixes

  • MySqlConnectorNet no longer throws _dataCache related exceptions on Linux.
  • Line-break characters in metadata results are no longer encoded.

Version 2.7, July 12, 2023

Improvements

  • Exception handling has been improved.

Version 2.6, April 10, 2023

Improvements

  • DBGate now supports MySQL objects with empty schemas, defaulting to the active connection's schema.
  • Performance improvements in loading SQL Server metadata.

Version 2.5, February 21, 2023

New Features

  • DBGate generates value lists based on MySQL and PostgreSQL ENUM values.
  • Support for the MySQL SET data type has been added.
  • MySQL binary(16) and varbinary(16) data are converted to GUID format when COLUMN_DEFAULT contains uuid_to_bin(uuid()), uuid_to_bin(uuid(),0), or uuid_to_bin(uuid(),1) functions.

Improvements

  • DBGate now uses the MySql.Data.MySqlClient data provider installed on the system, allowing for the latest version to be utilized: MySQL Connector/NET.
  • The missing MySql.Data.MySqlClient data provider is dynamically replaced with the built-in MySqlConnector provider.
  • Improved performance for loading MySQL 8 metadata.

Bug Fixes

  • Resolved various exceptions when connecting to MySQL 8 using MySql.Data.MySqlClient.

Version 2.4, January 23, 2023

Improvements

  • Updated DBGate examples for 2023.
  • The .NET and .NET Framework data providers for Snowflake have been updated.
  • The registration utility has been improved.

Version 2.3, December 13, 2022

Improvements

  • Language-specific edit pages are now available.
  • Special edit pages for Simplified Chinese, Traditional Chinese, Japanese, and Korean have been added.
  • A new dark theme is included.
  • SaveToDB frameworks and samples are now released under the MIT license.

Version 2.2, October 5, 2022

Bug Fixes

  • DBGate now correctly detects SQLite and MySQL datetime types in SQL code results via the .NET providers as strings.

Version 2.1, August 17, 2022

Breaking Changes

  • Saving changes for views, procedures, and SQL code objects based on multiple table joins is disabled. To save changes, manually set the target table in the xls.objects table.
  • Fields of views and procedures based on several tables are now marked as calculated.
  • Context parameters for client applications are now included in object properties (e.g., rownum).

Improvements

  • Translations for SQLite with empty schemas and object names have been added to the Default schema.
  • Automatic detection of fields in lists of values has been improved (reduced priority of Guid and Char(36)).
  • $orderby= now returns data without default sorting.

Bug Fixes

  • Saving by procedures is disabled if the _change handler is set.
  • JSON form data is no longer saved.
  • Redirects to the home page now work when changing the base property of HTML pages.

Version 2.0, July 5, 2022

Changes in End-User License Agreement

DBGate includes an updated End-User License Agreement. The most significant change is:

"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

  • DBGate is now available in Simplified Chinese, Traditional Chinese, Japanese, and Korean.
  • Language codes can be up to 10 characters long. For example, use zh-cn, zh-hans, and zh-hans-cn. Prefer zh-hans and zh-hant for Chinese.
  • A completely new Developer Guide has been added.
  • Full support for SQL codes in all configuration objects is now available.
  • A special package supporting .NET Framework 4.7.2 has been introduced.
  • Support for the Microsoft.Data.SqlClient provider has been added.
  • OData-compatible batch requests using the POST /$batch requests are now supported.
  • New HTTP endpoints for managing the console application: /api/$stop, /api/$show, /api/$hide. To enable these commands, set StopEnabled to true in the application settings.
  • The $reloadMetadata=true URL parameter allows reloading database metadata. Users can also press the Ctrl button and click the Reload button in the built-in JavaScript client to refresh metadata.
  • The $distinct=true URL parameter is now supported to return results using SELECT DISTINCT.
  • The $orderby URL parameter is supported.
  • The $groupby URL parameter is supported.
  • The $iscount=true URL parameter returns the SELECT COUNT(*) result.
  • The $binaryAsHex URL parameter and the binaryAsHex parameter in the Prefer header are now supported.
  • The $bigNumbersAsString URL parameter and the bigNumbersAsString parameter in the Prefer header are now supported.
  • The $dateTimeAsDateTimeOffset URL parameter and the same parameter in the Prefer header are now supported.
  • The $timezone and $timezoneoffset URL parameters and the same parameters in the Prefer header are now supported.
  • Configuration files now contain DBGate settings in the DBGate and DBGateW groups.
  • New configuration options include: MaxPageSize, UppercaseNamesInLowercase, DisableEditPageCache, BinaryAsHex, BigNumbersAsString, FunctionPrefixes, FunctionSuffixes, TraceSQL, and StopEnabled.
  • New connection configuration options include: AllowDatabaseChange, Offline, and Home.
  • The /schema/name/{id} HTTP endpoints allow selecting a single record by the primary key value.
  • A new header, "dbgate-version: 2.0," has been added.
  • A header to disable caching has been added: Cache-control: no-cache, no-store, must-revalidate.
  • Table and view results are sorted by default, using primary keys, identity columns, or the complete output column set.
  • Object metadata now includes event handlers.
  • Parameter metadata includes the CONTEXT_TYPE property with values: Language, Top, Skip.
  • Developers can overwrite the DEFAULT_VALUE in parameter metadata using the DefaultValue handlers.
  • DBGate supports paging and the $top and $skip URL parameters. Paging is automatically supported for tables and views. Developers can implement paging for stored procedures programmatically using pairs of parameters: top and skip, limit and offset, $top and $skip, or $limit and $offset. Use the MaxPageSize setting to define the maximum page size.
  • The built-in JavaScript client supports fixed columns (split/unsplit).
  • The built-in JavaScript client allows executing handlers of the 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

  • The DBGate .NET platform has been upgraded to .NET 6.0.
  • DBGate now supports SaveToDB Framework 10.
  • The built-in JavaScript client has undergone significant CSS changes.
  • Empty values of non-string data types are converted to NULL.
  • The DATA_TYPE properties are filled with System.DbType values instead of native SQL data types.
  • @-fields of SQL pseudo-code are no longer added to SELECT output fields. For instance, id, state, @country_id is translated to SELECT id, state FROM ... WHERE country_id = @country_id.
  • Stored procedure and SQL code parameters can 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.

Bug Fixes

  • DBGate now correctly detects SQL Data Warehouse objects.
  • Resolved an empty content-type header for some text or HTML responses.

This website is using cookies. By continuing to browse, you give us your consent to our use of cookies as explained in our Cookie Policy.