Appendix C: Document history

<< Appendix B: Reserved words and keywords – full lists | FB 2.5 Language Reference | Appendix D: License notice >>

Appendix C: Document history

The exact file history is recorded in the manual module in our CVS tree; see https://firebird.cvs.sourceforge.net/viewvc/firebird/manual/.

Revision History

0.0PVCreation of the document as a copy of the Firebird 2.1 Language Reference Update with IDs, titles, version numbers etc. updated to 2.5.
1.012 Jun 2011PVIntroduction :: Subject matter: Added “Security and access control statements” to first list. Changed ulink to Firebird Documentation Index (both text and url).
Introduction :: Authorship: Changed percentage of included material to 2–3%.
Introduction: New section Acknowledgments.
New chapter: New in Firebird 2.5.
Reserved words and keywords: Updated/corrected all the lists in all the subsections (except Possibly reserved in future versions). Also changed/added much of the text above and below the lists.
Reserved words and keywords :: Dropped since InterBase 6: Changed subsection titles to No longer reserved, still keywords and No longer reserved, not keywords, for better clarity.
Miscellaneous language elements: New section Hexadecimal notation for numerals.
Miscellaneous language elements: New section Hexadecimal notation for “binary” strings.
Data types and subtypes :: BIGINT data type: Added information on hex notation; added second example.
Data types and subtypes :: BLOB data type :: Text BLOB support in functions and operators: Altered “Changed in”; edited 2nd list item under “Level of support” (CORE-3233 fixed).
Data types and subtypes :: New character sets: Added 2.5 to “Changed in”; added new charset GB18030 and new alias WIN_1258.
Data types and subtypes :: New collations: Added 2.5 to “Changed in”; added new collations GB18030_UNICODE (for GB18030) and UNICODE_CI_AI (for UTF8). Added line on UNICODE_CI_AI to Note.
Data types and subtypes: New section SQL_NULL data type.
DDL statements: Removed last line from introductory text.
DDL statements: New section CHARACTER SET, with subsection ALTER CHARACTER SET.
DDL statements :: COLLATION :: CREATE COLLATION: Added “Changed in”; altered explanation of “UNI” in specific attributes table; gave table body valign=top; added NUMERIC-SORT to specific attributes table and added note beneath table.
DDL statements :: DATABASE :: CREATE DATABASE: New subsection Default collation for the database.
DDL statements :: DATABASE :: ALTER DATABASE :: END BACKUP: Updated URL of Firebird Documentation Index in Tip.
DDL statements :: DOMAIN :: ALTER DOMAIN: Replaced contents of Warning with reference to RDB$VALID_BLR note.
DDL statements :: Privileges: GRANT and REVOKE: Moved to chapter Security and access control.
DDL statements :: PROCEDURE: Changed introductory text (mentioned executable blocks).
DDL statements :: PROCEDURE :: CREATE PROCEDURE: Altered Syntax (added TYPE OF COLUMN).
DDL statements :: PROCEDURE :: CREATE PROCEDURE: New subsection TYPE OF COLUMN in parameter and variable declarations.
DDL statements :: PROCEDURE :: CREATE PROCEDURE :: Domains supported in parameter and variable declarations: Edited and extended Description. Replaced contents of Warning with reference to RDB$VALID_BLR note.
DDL statements :: PROCEDURE :: CREATE PROCEDURE :: NOT NULL in variable and parameter declarations: Changed layout of Example (first line too long for PDF).
DDL statements :: PROCEDURE :: ALTER PROCEDURE: New subsection Classic Server: Altered procedure immediately visible to other clients.
DDL statements :: PROCEDURE :: ALTER PROCEDURE: New subsection TYPE OF COLUMN in parameter and variable declarations.
DDL statements :: TABLE :: ALTER TABLE: New subsection ALTER COLUMN also for generated (computed) columns.
DDL statements :: TABLE :: ALTER TABLE: New subsection ALTER COLUMN ... TYPE no longer fails if column is used in trigger or SP.
DDL statements :: TRIGGER :: CREATE TRIGGER: New subsection TYPE OF COLUMN in variable declarations.
DDL statements :: TRIGGER :: ALTER TRIGGER: New subsection TYPE OF COLUMN in variable declarations.
DDL statements :: VIEW :: CREATE VIEW: Added Syntax.
DDL statements :: VIEW :: CREATE VIEW: New subsection Views can select from stored procedures.
DDL statements :: VIEW :: CREATE VIEW: New subsection Views can infer column names from derived tables or GROUP BY.
DDL statements :: VIEW :: CREATE VIEW :: Per-column aliases supported in view definition: Shortened partial Syntax.
DDL statements :: VIEW :: CREATE VIEW :: Full SELECT syntax supported: Altered “Changed in”. Altered Note on union views.
DDL statements :: VIEW: New sections ALTER VIEW and CREATE OR ALTER VIEW.
DML statements :: DELETE: Improved formal syntax (values -> <values> and added specification of latter).
DML statements :: EXECUTE BLOCK: Added 2.5 to “Changed in”. Altered Syntax (added TYPE OF COLUMN).
DML statements :: EXECUTE BLOCK :: Domains instead of datatypes: Extended Description. Added Warning about collations.
DML statements :: EXECUTE BLOCK: New subsection TYPE OF COLUMN in parameter and variable declarations.
DML statements :: INSERT: Improved formal syntax (value -> value_expression) and removed erroneous space.
DML statements :: UPDATE: Improved formal syntax (values -> <values> and added specification of latter).
DML statements :: UPDATE: New section Changed SET semantics.
PSQL statements: Changed introductory paragraph to mention executable blocks.
PSQL statements :: DECLARE: Altered Syntax (added TYPE OF COLUMN). Made itemizedlist after Syntax compact.
PSQL statements :: DECLARE :: DECLARE with DOMAIN instead of datatype: Extended Description. Replaced contents of Warning with reference to RDB$VALID_BLR note.
PSQL statements :: DECLARE: New subsection TYPE OF COLUMN in variable declaration.
PSQL statements :: EXECUTE STATEMENT: Added “Changed in”. Altered Description. Added Syntax. Added para introducing following subsections.
PSQL statements :: EXECUTE STATEMENT :: Any number of data rows returned: Improved Syntax block. Removed spaces inside parentheses in Example.
PSQL statements :: EXECUTE STATEMENT: New section Improved performance.
PSQL statements :: EXECUTE STATEMENT: New section WITH {AUTONOMOUS|COMMON} TRANSACTION.
PSQL statements :: EXECUTE STATEMENT: New section WITH CALLER PRIVILEGES.
PSQL statements :: EXECUTE STATEMENT: New section ON EXTERNAL [DATA SOURCE].
PSQL statements :: EXECUTE STATEMENT: New section AS USER, PASSWORD and ROLE.
PSQL statements :: EXECUTE STATEMENT: New section Parameterized statements.
PSQL statements :: EXECUTE STATEMENT :: Caveats with EXECUTE STATEMENT: Edited item 3 (performance). Removed items 4 and 6. Edited final paragraph (less negative).
PSQL statements: New section IN AUTONOMOUS TRANSACTION.
PSQL statements: New section Subqueries as PSQL expressions.
New chapter: Security and access control.
Security and access control: New section ALTER ROLE.
Security and access control :: GRANT and REVOKE: Moved here from DDL chapter. Changed id.
Security and access control :: GRANT and REVOKE: New section GRANTED BY.
Security and access control :: GRANT and REVOKE: New section REVOKE ALL ON ALL.
Security and access control :: GRANT and REVOKE :: REVOKE ADMIN OPTION: Changed id.
Security and access control: New section The RDB$ADMIN role.
Security and access control: New section AUTO ADMIN MAPPING.
Security and access control: New section SQL user management commands.
Operators and predicates: New section SIMILAR TO.
Aggregate functions :: LIST(): Added “Changed in” formalpara. Edited second Syntax note (about separator). Removed Warning about truncation bug in 2.1–2.1.3
Internal functions :: ASCII_VAL(): Edited list item about bug (mentioned 2.5.x versions).
Internal functions :: ATAN2(): Edited 3rd Syntax note (mentioned error raised in FB 3).
Internal functions :: CAST(): Added 2.5 to “Changed in”. Altered Syntax (added TYPE OF COLUMN). Added formalpara Casting to a column's type.
Internal functions: New section CHAR_TO_UUID().
Internal functions :: DATEADD(): WEEK unit added and sub-DAY units allowed with DATEs: Added “Changed in”. Edited Description, Syntax, 2nd list item after Syntax, and added additional example.
Internal functions :: DATEDIFF(): WEEK unit added and sub-DAY units allowed with DATEs: Added “Changed in”. Edited Description, Syntax, and 2nd list item after Syntax.
Internal functions :: EXTRACT(): Corrected millisecond range in table (0.0000 -> 0.0).
Internal functions :: EXTRACT() :: MILLISECOND: Removed Bug alert for 2.1–2.1.1.
Internal functions :: GEN_UUID(): Added Example. Added links to new UUID functions.
Internal functions :: LOG(): Added “Changed in”. Edited all the list items under Syntax.
Internal functions :: LOG10(): Added “Changed in”. Edited list item under Syntax.
Internal functions :: LOWER(): Replaced Important after Syntax with Note, with different text.
Internal functions :: LPAD(): Added “Changed in”. Altered result type. Altered 2nd list item after Syntax. Changed Tip to Note and edited text.
Internal functions :: OVERLAY(): Changed 1st word of Description (“Replaces” -> “Overwrites”). Shortened 1st list item after Syntax: removed description of 2.1-specific bug.
Internal functions :: RDB$GET_CONTEXT(): Added ENGINE_VERSION context var (added in 2.1).
Internal functions :: RIGHT(): Edited 1st list item after Syntax, about CORE-3228.
Internal functions :: RPAD(): Added “Changed in”. Altered result type. Altered 2nd list item after Syntax. Changed Tip to Note and edited text.
Internal functions :: SUBSTRING(): Added 2.1.5 and 2.5.1 to “Changed in”. Noted fixing of first bug in 2.1.5 and 2.5.1.
Internal functions: New section UUID_TO_CHAR().
External functions :: addWeek: Added “Better alternative”. Removed “The DATEADD alternative” formalpara.
External functions :: lower: Dropped last sentence from Description. Altered first paragraph after Declaration block and removed comment.
External functions :: round, i64round: Removed bug alert (fixed before 2.5).
External functions :: truncate, i64truncate: Removed bug alert (fixed before 2.5).
Notes: New section The RDB$VALID_BLR field. This note contains the (heavily edited and extended!) text previously contained in the Warnings in ALTER DOMAIN, CREATE PROCEDURE :: Domains supported in parameter and variable declarations and DECLARE :: DECLARE with DOMAIN instead of datatype.
New appendix: Reserved words and keywords – full lists.
Document history: Link to CVS changed, points directly to manual module now.
License Notice: Copyright end year 2011.
First publication, based on the Firebird 2.1 Language Reference Update with the above changes for 2.5 added (adding 25–30% to the size).
1.18 Oct 2011PVarticleinfo and Introduction :: Versions covered: Added 2.5.1 to covered versions.
New in Firebird 2.5: Edited first para (mentioned 2.5.1).
New in Firebird 2.5: Started all 10 subsections with “Changed since Firebird 2.1”, for clarity.
New in Firebird 2.5 :: Reserved words and keywords: Added SQLSTATE to “Newly reserved words”. Changed “New keywords” to “New non-reserved keywords”.
New in Firebird 2.5 :: Context variables: New subsection.
Reserved words and keywords :: Added since InterBase 6 :: Newly reserved words: Added SQLSTATE.
Reserved words and keywords :: Added since InterBase 6 :: New keywords: Renamed this section to New non-reserved keywords.
Miscellaneous language elements :: Shorthand casts: Renamed Shorthand datetime casts.
Miscellaneous language elements :: Shorthand datetime casts: Added Note warning that value stays the same as long as the statement remains prepared.
DDL statements :: PROCEDURE :: CREATE PROCEDURE: Shortened relname.colname to rel.col in Syntax, to keep line length within bounds for PDF.
DDL statements :: PROCEDURE :: CREATE PROCEDURE :: TYPE OF COLUMN in parameter and variable declarations: Moved title “Warnings” from itemized list to parent warning, where it belongs.
PSQL statements :: EXECUTE STATEMENT :: ON EXTERNAL [DATA SOURCE] :: Exception handling: isc_eds_connection, isc_eds_statement -> eds_connection, eds_statement.
Context variables :: CURRENT_TIME: Edited second Note to warn against shorthand syntax.
Context variables :: CURRENT_TIMESTAMP: Edited second Note to warn against shorthand syntax.
Context variables :: GDSCODE: Rewrote Description in light of new, so far undocumented behaviour since Firebird 2.0 (!). Corrected Example: after WHEN GDSCODE a symbolic name must follow, not a number. Added notice after Example to explain same.
Context variables :: 'NOW': Edited the two existing Notes and inserted one about the freeze effect of the shorthand syntax. In the last Note, removed the link elements from around CURRENT_TIME and CURRENT_TIMESTAMP.
Context variables :: SQLCODE: Added “Changed in” and “Deprecated in” formalparas. Rewrote Description in light of new, so far undocumented behaviour since Firebird 2.0 (!). Added Notice at the end (also about the deprecation).
Context variables :: SQLSTATE: New section (variable implemented in 2.5.1).
Internal functions :: CAST(): Added notice that when using the shorthand syntax, the value stays the same as long as the statement remains prepared.
Reserved words and keywords – full lists: Added SQLSTATE to both Reserved words and Keywords.

back to top of page
<< Appendix B: Reserved words and keywords – full lists | FB 2.5 Language Reference | Appendix D: License notice >>