News Firebird 2.5
General
- New Threading architecture, introducing the new SuperClassic server, for better SMP support
- SQL CREATE/ALTER/DROP USER
- ALTER VIEW and CREATE OR ALTER VIEW
- Autonomous transactions within a PSQL module (stored procedure, trigger or dynamically executable PSQL block)
- PSQL new ability to query another database via EXECUTE STATEMENT
- Thread-safe client library
- ODS version 11.2
- Optimizer Improvements
Administrative
- System audit tracing and user trace sessions via the Services API, making it possible to monitor and analyse everything going on in a database in real time
- New system role RDB$ADMIN allows SYSDBA to transfer its privileges to another user on a per-database basis (ODS 11.2)
- More information in the monitoring tables
- MON$MEMORY_USAGE: current memory usage
- MON$CONTEXT_VARIABLES: known context variables
- Asynchronous cancellation of connections
- Disconnect connection ID 32: DELETE FROM MON$STATEMENTS WHERE MON$ATTACHMENT_ID = 32
- Disconnect all clients except my own connection:
DELETE FROM MON$ATTACHMENTS WHERE MON$ATTACHMENT_ID <> CURRENT_CONNECTION
- Capability for ordinary users to monitor any of their own attachments as well as CURRENT_CONNECTION
Other
- Regular expression support using the SIMILAR TO predicate
- ALTER COLUMN for computed columns
- Enhanced access to stored procedures in view definitions
- Optional GRANTED BY or GRANTED AS for GRANT and REVOKE statements, enabling the grantor to be a user other than the CURRENT_USER (the default)
- REVOKE ALL syntax to dispose of all privileges for a user or role at once
- Support for WHERE SOME_COL = ? OR ? IS NULL predications
- Removal of “reserved” status for all but a handful of keywords that are not reserved in the SQL standard
- Hex Literal Support: SELECT x'00F0A53BC7' FROM RDB$DATABASE;
- Borrow Database Column Type for a PSQL Variable:
CREATE PROCEDURE SP_INS_PERSON (ID TYPE OF COLUMN PERSON.ID) - Well-formedness checks are now performed on UNICODE_FSS strings and text blobs
Data-handling Enhancements
- New built-in functions for converting UUID CHAR(16) OCTETS strings to RFC4122-compliant format and vice versa: CHAR_TO_UUID(), UUID_TO_CHAR()
- Ability to pass 32-bit and 64-bit integers as hexadecimal in numeric literal and X-prefixed binary string literal formats
International Language Support
- Default COLLATE clause for CREATE DATABASE
- Ability to change the default COLLATE for a used character set
- GBAK restore switches FIX_FSS_DATA and FIX_FSS_METADATA to restore legacy databases with UNICODE_FSS data and/or metadata correctly without resorting to scripts and manual techniques
- Accent-insensitive collation for Unicode
Command Line Utilities
- New tool fbtracemgr
- Retrieve password from a file or prompt: for all tools that expect a password parameter: -fet[ch_password] instead of -pa[ssword]
- GBAK: New repair switches for malformed strings
Source:
http://www.destructor.de