InterBase Version History
Below is a summary of the highlights added in previous editions of InterBase. For detailed release notes and new features please visit the InterBase DocWiki
The focus is on SQL features in this new release. InterBase 2017 comes with a faster core engine, server-wide performance monitoring.
SQL Derived Table & Common Table Expression Support
SQL derived tables will enhance the ability of existing applications to use InterBase as a backend RDMBS.
A derived table allows developers the expressive flexibility to use a View-like structure without defining a database schema view. It also lets users obtain the same benefit in an ad hoc query without requiring database administration to create a view definition. Derived tables are temporary sets of records that can be used inside other queries. These tables can shorten long queries, or break complex processes into logical steps.
The query expression can be embedded directly in the SQL statement together with a correlation name used to identify the derived table. This is informally known as "common table expressions”.
New ISQL Scripting Command
New RECONNECT command for use in isql and SQL scripts to reconnect to the latest successfully connected database
New ISQL Command Line Option
isql supports a new command line option, -names
Exclusive Isolation Level
Allows transactions to acquire an exclusive lock on a target table, and be the only ones able to execute SELECT, INSERT, UPDATE, and DELETE on a table.
Exclusive isolation level can be used by a tool performing online reorganization of tables that may need temporary exclusive table access to perform its functions. Transactions use exclusive table access to acquire an exclusive lock on a target table, and they are the only ones able to execute SELECT, INSERT, UPDATE, and DELETE on a table. When a transaction acquires an exclusive lock, other transactions with lock requests must wait until the lock is released or downgraded to a compatible level. Transactions that maintain exclusive table access can modify data on a table without interference from other transactions. This isolation level is different from TABLE STABILITY and PROTECTED access because it does not allow other transactions to select from the table
Command which allows the users and applications to empty the contents of a database table.
Truncate Table is useful for tables where rows require frequent deletion. The Truncate Table command performs faster and requires less I/O. It also journals and archives much less information than an equivalent DELETE FROM table command. ETL applications or other applications can benefit from the combination of TRUNCATE TABLE with the NO RESERVE SPACE table allocation option when they stage large amounts of data that are deleted after use or moved to a more permanent location such as a history table
Transaction Wait Time
Specifies a period transactions wait for acquiring lockable resources.
InterBase transaction lock can wait indefinitely, wait a specified period, or not wait and return an error immediately to acquire lockable resources. When a transaction holds a lock on a resource at a level incompatible with the requested lock level, this resource is inaccessible to other transactions. Lockable resources can be tables, rows, or transaction entities
Single Line Comment
Comment syntax allows programmers to add comments to procedure and trigger code or SQL scripts.
There are two different types of comments that you can use:
- The SIMPLE comment: A comment that starts with a special symbol and ends with a new line. The simple comment syntax is only available starting with database engine version InterBase 2017.
- The BRACKETED comment: A comment that starts and ends with a special symbol. It may be multi-line.
Regardless of the type of comment you use, you may start a comment anywhere in a line. However, with a simple comment, you need to keep in mind that the comment area stops after a new line. To use the simple comment syntax for a multi-line comment, you need to start each line with the special symbol.
ODS version 17
Databases created with InterBase 2017 use ODS 17.
Features of ODS 17 include:
- InterBase 2017 creates databases with ODS version 17 by default.
- Server-side Performance Monitoring is only available starting with ODS version 17. See "Monitor all online databases" for more detail.
- Change View Subscriptions now reflect ALTER TABLE changes starting with ODS version 17.
- Change View retrieval performance is enhanced under ODS version 17.
Tracking and managing data changes to multiple destinations has never been easier; just subscribe and query with SQL! InterBase's lightweight, secure and powerful embeddable kernel providing developers easy to integrate features including user security, synchronisation and disaster recovery into their applications today making data as easy as Embed, Deploy, Relax!
Change Views from InterBase introduce a new paradigm to the common question software architects have; How to manage changes between databases and devices? Today's software (data) landscape is commonly dominated from the need to have the business data, or subsets of, on multiple servers and devices – and this is where Change Views brand new approach makes drastic simplifications across the product development lifecycle. Change Views answers the objections and worries a data architect has around identifying and tracking changes. Rather than using timestamp fields or triggers, InterBase's patented subscription approach based on top of its multigenerational architecture delivers
- Field level change tracking
- Scalable tracking with near zero performance impact, regardless of the number of users
- Full visibility of changes that have happened concurrently
- Inbuilt avoidance of notification of your own changes
In summary – Change Views allows you to easily
- View and query via SQL what has changed
- Keep in control of data cost by moving only the data you need to move
- Keep you caches up to date in the fastest time possible by moving the smallest dataset possible
- Avoid complicated system configuration with redundant fields
When using Change views, new faster support for backup is provided via Incremental Data Dumps.
New - Linux 64bit & RHEL 7 and Ubuntu Support
InterBase XE7 Server Edition now includes support for Linux 32-bit and 64-bit including Red Hat Enterprise Linux (RHEL) 6, RHEL 7 and SUSE Linux Enterprise 11, and now featuring Ubuntu 14. This new platform is available as a choice when purchasing InterBase XE7 Server and is also included in the latest Developer Edition and InterBase Server Trial.
64 Bit transaction ID's
Run for longer! - One key benefit of InterBase is its ability to just leave it running without the need for expensive db admin time, even if the database is restarted unexpectedly; a big part of how this is achieved is to do with InterBase's transactional approach. While transaction management has a huge amount of benefits, there was one barrier on very high load databases that caused the database to have to backup and restore, the Transaction ID. Previously on a database running around 1,000 transactions a minute, you would have about 21 days between backup and restore. With the new 64bit Transaction ID's running 10,000 transactions a minute you would still be running 150 years later! Helping you, no matter the size of the throughput to embed, deploy and relax.
Fast Backup Format - Incremental Data Dumps
InterBase has the ability to create a live read only backup database referred to as a data dump. These are great for creating read only databases for reporting and load balancing certain usage requirements. New with XE7 is a much faster processing of the data dumps that dramatically reduces the CPU load and time it takes to dump out the changes. As data dumps can be switched from readonly to live using GBAK, the new Incremental data dumps are a much faster way to revert to a backup of the database if ever needed, providing even quick disaster recovery in certain situations.
IBLite for Android, iOS, Windows,
and OS X
Now you can use InterBase as the embedded database in your Android and iOS mobile apps! Develop your apps with Embarcadero RAD Studio and easily embed and connect with the IBLite database to store your app's data. You get a free, unlimited deployment license for IBLite for Windows, OS X, Android and iOS when you buy RAD Studio 10 Seattle or Delphi 10 Seattle with Mobile or C++Builder 10 Seattle with Mobile. That means zero cost to deploy IBLite with your mobile or desktop apps. Get started with IBLite today:
InterBase ToGo for Android and iOS
Ready to take your mobile apps to the next level in scalability and security? InterBase ToGo extends IBLite for Android, iOS, Windows and OS X to work with larger database files (>100MB) and provides strong (AES) database and column encryption as well as strong network encryption (SSL). Ideal for corporate apps and apps where data security is a must.
Tight integration with RAD Studio, Delphi and C++Builder for seamless deployment
InterBase free Developer Edition is included with RAD Studio, C++Builder and Delphi. With InterBase XE7 you get easy deployment of your applications to Android, iOS, Windows, Linux and OS X (plus Solaris with InterBase XE). Your database will be packaged with RAD projects so when you deploy your project to any platform, InterBase will automatically get deployed with it.
New 64 bit ODBC driver allows easy deployment on 64 bit platforms.
InterBase XE7 offers new ODBC drivers for 64 bit allowing you to deploy and use InterBase on 64 bit clients and server. Also, embed InterBase with your 64 bit ODBC applications (Windows only) and deploy it across multiple platforms.
What was new in InterBase XE?
- Improved Security
Stronger password protection with cryptographic hash function. InterBase XE also supports passwords up to 32 characters in length to comply with the most stringent security requirements.
- Improved Scalability
InterBase now has the ability to manage more data and larger databases
- Features for Easier Development
Support for Dynamic SQL in Stored Procedures.
- Improved handling for large objects
Optimized performance for large objects with Stream methods