mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-22 14:03:03 +01:00
ed0e0daeb3
- Plugins API. - Feature CORE-2700 - UDR (User Defined Routines) Engine - C++ API supporting functions, triggers and stored procedures. - Feature CORE-2470 - Support for alternate format of strings literals. - Feature CORE-2310 - DDL triggers. - Feature CORE-2312 - PSQL Packages. - Feature CORE-1209 - CONTINUE statement. - Feature CORE-1180 - DDL syntax to change (not) nullable state of columns. - Feature CORE-2090 - Support OVER () clause with current aggregate functions. - Fixed CORE-2699 - Common table expression context could be used with parameters. - Introduce ODS 12.0. - Work in progress in type-safe parser. - Refactor some DDL commands (procedures and triggers) from DYN to DdlNodes. - Refactor virtual tables to use a class hierarchy instead of namespaces. This is basic thing, not based on the changes done in Vulcan. Window functions is based on this work. - Refactor COMMENT ON and DROP FUNCTION from DYN to DdlNodes. COMMENT ON do not use GDML anymore, it uses DSQL with PreparedStatement class. - Refactor EXECUTE BLOCK to StmtNodes. - Refactor the IUDF to SysFunctions. That eliminates RDB$GET_CONTEXT and RDB$SET_CONTEXT from RDB$FUNCTIONS.
26 lines
846 B
Plaintext
26 lines
846 B
Plaintext
------------------------
|
|
Alternate String Quoting
|
|
------------------------
|
|
|
|
Support for alternate format of strings literals.
|
|
|
|
Author:
|
|
Adriano dos Santos Fernandes <adrianosf@uol.com.br>
|
|
|
|
Syntax:
|
|
|
|
<alternate string literal> ::=
|
|
{ q | Q } <quote> <alternate start char> [ { <char> }... ] <alternate end char> <quote>
|
|
|
|
Syntax rules:
|
|
When <alternate start char> is '(', '{', '[' or '<', <alternate end char> is respectively
|
|
')', '}', ']' and '>'. In other cases, <alternate end char> is equal to <alternate start char>.
|
|
|
|
Notes:
|
|
Inside the string, i.e., <char> items, single (not escaped) quotes could be used.
|
|
Each quote will be part of the result string.
|
|
|
|
Examples:
|
|
select q'{abc{def}ghi}' from rdb$database; -- result: abc{def}ghi
|
|
select q'!That's a string!' from rdb$database; -- result: That's a string
|