Issue Details (XML | Word | Printable)

Key: DOC-145
Type: Task Task
Status: Open Open
Priority: Major Major
Assignee: Paul Vinkenoog
Reporter: Tony Whyman
Votes: 0
Watchers: 0

If you were logged in you would be able to see more operations.

FB4 Release Notes should indicate that revised CREATE TRIGGER (SQL2003) syntax is not backwards compatible with older versions

Created: 06/Feb/20 09:26 AM   Updated: 06/Feb/20 09:36 AM
Component/s: None
Affects Version/s: None
Fix Version/s: None

Environment: All

 Description  « Hide
See CORE-6243 and CORE-5545 for background discussion.

The SQL2003 variant of the CREATE TRIGGER syntax has changed in Firebird 4 so that the "POSITION" clause must now come after the "ON <relation name>" clause instead of preceding it as was the case in Firebird 2.5 and Firebird 3.x. SQL statements that successfully used this variant in earlier versions will be rejected by Firebird 4 as invalid syntax (token unknown - POSITION). The Firebird 2.5 language reference specifies:

<relation_trigger_sql2003> ::=
  {BEFORE | AFTER} <mutation_list>
  [POSITION number]
  ON {tablename | viewname}

Firebird 4 effectively changes the syntax specification to

<relation_trigger_sql2003> ::=
  {BEFORE | AFTER} <mutation_list>
  ON {tablename | viewname}
  [POSITION number]

CORE-5545 declares that this a bug fix despite both Firebird 2.5 and Firebird 3 being compliant with the Firebird 2.5 language reference manual. The "POSITION" clause is understood to be a Firebird extension rather than an SQL standard and hence the language reference may be viewed as the original specification. Both Firebird 2.5 and Firebird 3 are compliant with the specification and hence this should not be identified as a bug. CORE-5545 is a change to the Firebird SQL syntax specification.

The revised CREATE TRIGGER syntax should be declared in the release notes both in chapter 8 (DDL) and in chapter 12 (Compatibility Issues) so that users are correctly informed about this change to the Firebird SQL specification.

 All   Comments   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
There are no comments yet on this issue.