You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Boolean expressions was created with this bad ambiguity:
----------
For compatibility reasons, the names INSERTING, UPDATING and DELETING (which aren't keywords)
work (like in 2.5 and previous) as boolean expressions and work as values (column or
variable) in non-booleans expressions. For example, in:
SELECT INSERTING, NOT INSERTING FROM TEST WHERE INSERTING AND INSERTING IS TRUE
the INSERTING's are respectively recognized as value, keyword, keyword and value.
----------
Now, making these words reserved removes the boolean expression problem, so that:
- Non trigger-usage (column, variable, parameter name) of these words must be quoted
- Database restored preserve the functionality until the code is manually changed
Compatibility note:
- Who uses them in triggers outside of boolean expressions, will have a code meaning a different thing, as the previous usage as column/variable/parameter name will be transformed to a boolean expression related to the trigger action. Double quoting them in this context makes the code work as before.
description: Boolean expressions was created with this bad ambiguity:
For compatibility reasons, the names INSERTING, UPDATING and DELETING (which aren't keywords)
work (like in 2.5 and previous) as boolean expressions and work as values (column or
variable) in non-booleans expressions. For example, in:
SELECT INSERTING, NOT INSERTING FROM TEST WHERE INSERTING AND INSERTING IS TRUE
the INSERTING's are respectively recognized as value, keyword, keyword and value.
Now, making these words reserved removes the boolean expression problem, so that:
- Non trigger-usage (column, variable, parameter name) of these words must be quoted
- Database restored preserve the functionality until the code is manually changed
Compatibility note:
- Who uses them in triggers outside of boolean expressions, will have a code meaning a different thing, as the previous usage as column/variable/parameter name will be transformed to a boolean expression related to the trigger action. Double quoting them in this context makes the code work as before.
=>
Boolean expressions was created with this bad ambiguity:
----------
For compatibility reasons, the names INSERTING, UPDATING and DELETING (which aren't keywords)
work (like in 2.5 and previous) as boolean expressions and work as values (column or
variable) in non-booleans expressions. For example, in:
SELECT INSERTING, NOT INSERTING FROM TEST WHERE INSERTING AND INSERTING IS TRUE
the INSERTING's are respectively recognized as value, keyword, keyword and value.
----------
Now, making these words reserved removes the boolean expression problem, so that:
- Non trigger-usage (column, variable, parameter name) of these words must be quoted
- Database restored preserve the functionality until the code is manually changed
Compatibility note:
- Who uses them in triggers outside of boolean expressions, will have a code meaning a different thing, as the previous usage as column/variable/parameter name will be transformed to a boolean expression related to the trigger action. Double quoting them in this context makes the code work as before.
Submitted by: @asfernandes
Boolean expressions was created with this bad ambiguity:
----------
For compatibility reasons, the names INSERTING, UPDATING and DELETING (which aren't keywords)
work (like in 2.5 and previous) as boolean expressions and work as values (column or
variable) in non-booleans expressions. For example, in:
SELECT INSERTING, NOT INSERTING FROM TEST WHERE INSERTING AND INSERTING IS TRUE
the INSERTING's are respectively recognized as value, keyword, keyword and value.
----------
Now, making these words reserved removes the boolean expression problem, so that:
- Non trigger-usage (column, variable, parameter name) of these words must be quoted
- Database restored preserve the functionality until the code is manually changed
Compatibility note:
- Who uses them in triggers outside of boolean expressions, will have a code meaning a different thing, as the previous usage as column/variable/parameter name will be transformed to a boolean expression related to the trigger action. Double quoting them in this context makes the code work as before.
Commits: ba03a8c FirebirdSQL/fbt-repository@e66b0fd
====== Test Details ======
"Database restored preserve the functionality until the code is manually changed " -- not tested yet.
The text was updated successfully, but these errors were encountered: