What's new for IBM i 7.5
This topic highlights the changes made to this topic collection for IBM® i 7.5.
The major new features covered in this book include:
- The Boolean data type is supported. The key elements of this support include:
- Boolean values
- Boolean assignments
- Boolean comparisons
- Boolean constants
- Boolean predicate
- BOOLEAN, ISFALSE, ISTRUE, ISNOTFALSE, and ISNOTTRUE scalar functions
- JSON_ARRAY using a fullselect requires parentheses in some situations.
- TRY_CAST is similar to CAST, but returns the null value if the conversion fails: TRY_CAST specification
- HTTP_PATCH and HTTP_PATCH_VERBOSE functions have been added in QSYS2: HTTP_PATCH and HTTP_PATCH_BLOB and HTTP_PATCH_VERBOSE and HTTP_PATCH_BLOB_VERBOSE
- The RESTRICT ON DROP clause can be used to prevent tables from being dropped: CREATE TABLE, ALTER TABLE
- The maximum size of an index has been increased to 16 terabytes.
What's new as of November 2023
- ENCRYPT_AES256 function uses a 256 bit encryption key: ENCRYPT_AES256
- HTML_ENTITY_DECODE and HTML_ENTITY_ENCODE provide conversion of characters in an HTML string: HTML_ENTITY_DECODE and HTML_ENTITY_ENCODE
- The HTTP functions support two new headers options for returning cookies: HTTP options
- SYSCOLUMNS2 returns BUFFER_LENGTH and BUFFER_POSITION columns: SYSCOLUMNS2
What's new as of May 2023
- ADD_DAYS, ADD_HOURS, ADD_MINUTES, ADD_SECONDS, and ADD_YEARS scalar functions provide date arithmetic capability: ADD_DAYS, ADD_HOURS, ADD_MINUTES, ADD_SECONDS, and ADD_YEARS
- The HTTP functions in QSYS2 support BLOB data: HTTP_DELETE and HTTP_DELETE_BLOB, HTTP_GET and HTTP_GET_BLOB, HTTP_PATCH and HTTP_PATCH_BLOB, HTTP_POST and HTTP_POST_BLOB, HTTP_PUT and HTTP_PUT_BLOB, HTTP_DELETE_VERBOSE and HTTP_DELETE_BLOB_VERBOSE, HTTP_GET_VERBOSE and HTTP_GET_BLOB_VERBOSE, HTTP_PATCH_VERBOSE and HTTP_PATCH_BLOB_VERBOSE, HTTP_POST_VERBOSE and HTTP_POST_BLOB_VERBOSE, HTTP_PUT_VERBOSE and HTTP_PUT_BLOB_VERBOSE
- The RESTRICT ON DROP clause can be used to prevent functions and procedures from being dropped: CREATE FUNCTION (SQL scalar), CREATE FUNCTION (SQL table), CREATE FUNCTION (external scalar), CREATE FUNCTION (external table), CREATE PROCEDURE (SQL), CREATE PROCEDURE (external), ALTER FUNCTION (SQL scalar), ALTER FUNCTION (SQL table), ALTER FUNCTION (external scalar), ALTER FUNCTION (external table), ALTER PROCEDURE (SQL), and ALTER PROCEDURE (external)
What's new as of December 2022
- Support for geospatial data and functions is added to Db2 for i. See Geospatial Analytics.
- REPLICATION_OVERRIDE allows user-provided values to be specified for all generated columns for insert, update, and merge statements: REPLICATION_OVERRIDE
- FIRST_DAY scalar function returns the first day of a month: FIRST_DAY
- The HTTP functions support a new headers option, passing the values as a JSON object: HTTP options
- JSON_UPDATE scalar function allows modification of a value within a JSON document: JSON_UPDATE
- TIMESTAMPDIFF_BIG returns a BIGINT result data type: TIMESTAMPDIFF_BIG
- REMOTE TABLE allows a query containing a table function to run on a remote IBM i: table-reference
- Comments can be added to the return columns for a table function: COMMENT
- SYSCOLUMNSTAT returns varying length statistics: SYSCOLUMNSTAT
What’s new since the first IBM i 7.4 publication
The following revisions or additions are new since the initial release of IBM i 7.4:
- The SELECTIVITY clause allows user hints for individual predicates: Search conditions
- ISNULL and NOTNULL are synonyms for the IS NULL and IS NOT NULL predicates: NULL predicate
- Synonyms for existing functions: ARRAY_MAX_CARDINALITY and ARRAY_TRIM
- HASH_ROW function performs a hash of all the column values for a row: HASH_ROW
- New HTTP functions in QSYS2 can make HTTP requests that use web services. These functions use the HTTP Transport support provided by the AXISC APIs: HTTP_DELETE and HTTP_DELETE_BLOB, HTTP_GET and HTTP_GET_BLOB, HTTP_POST and HTTP_POST_BLOB, HTTP_PUT and HTTP_PUT_BLOB, HTTP_DELETE_VERBOSE and HTTP_DELETE_BLOB_VERBOSE, HTTP_GET_VERBOSE and HTTP_GET_BLOB_VERBOSE, HTTP_POST_VERBOSE and HTTP_POST_BLOB_VERBOSE, HTTP_PUT_VERBOSE and HTTP_PUT_BLOB_VERBOSE
- INTERPRET function assigns a data type to binary data: INTERPRET
- JSON_TABLE, JSON_QUERY, JSON_VALUE, JSON_TO_BSON, and BSON_TO_JSON have been modified to support a JSON expression that is an array: JSON_TABLE, JSON_QUERY, JSON_VALUE, JSON_TO_BSON, BSON_TO_JSON
- Synonyms for existing functions: NVL, POW, RANDOM, STRLEFT, STRRIGHT, STRPOS, TO_CLOB. NVL, POWER or POW, RANDOM or RAND, STRLEFT, STRRIGHT, STRPOS, and TO_CLOB
- For CREATE FUNCTION, an external name that is a service program name does not require a library qualifier when the string form of the name is used. Naming conventions
- CREATE FUNCTION (external scalar), CREATE_FUNCTION (external table), and CREATE PROCEDURE (external) removed the limit of 32 routine attributes that can be saved in the associated program or service program object.
- CREATE FUNCTION (SQL scalar), CREATE_FUNCTION (SQL table), and CREATE PROCEDURE (SQL) support the PROGRAM NAME clause to allow the program or service program name to be specified: CREATE FUNCTION (SQL scalar), CREATE FUNCTION (SQL table), and CREATE PROCEDURE (SQL)
- CREATE SEQUENCE supports the FOR SYSTEM NAME clause: CREATE SEQUENCE
- Weakly typed distinct types have been implemented: CREATE TYPE (distinct)
- DROP supports the IF EXISTS clause: DROP
- Extended indicators can be used in OPEN and EXECUTE to allow omitting host variables from the USING list: OPEN, EXECUTE
- TAG statement added to complement WHENEVER statement for fully free form ILE RPG: TAG
- The WHENEVER statement can call an internal procedure when a monitored condition is encountered: WHENEVER
- The language used to define SQL functions, procedures, and triggers is referred to as SQL PL (SQL Procedural Language)
- Extended indicators supported in SQL PL: assignment-statement
- SYSCOLUMNS2 view returns attributes for DDS created files: SYSCOLUMNS2
- SYSCOLUMNS2_SESSION view returns columns in QTEMP: SYSCOLUMNS2_SESSION
- Documented table SYSDUMMY1: SYSDUMMY1
- Additional index invalidation information added to SYSINDEXSTAT, SYSPARTITIONINDEXES, and SYSPARTITIONINDEXSTAT: SYSINDEXSTAT, SYSPARTITIONINDEXES, and SYSPARTITIONINDEXSTAT
- SYSPACKAGESTAT returns an indication that the package contains single use statements: SYSPACKAGESTAT
- Variable length segment and blocked insert information added to SYSPARTITIONSTAT and SYSTABLESTAT views: SYSPARTITIONSTAT, SYSTABLESTAT
How to see what's new or changed
To help
you see where technical changes have been made, this information uses:
- The image to mark where new or changed information begins.
- The image to mark where new or changed information ends.
To find other information about what's new or changed this release, see the Memo to users.