8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-30 19:23:03 +01:00
Commit Graph

46 Commits

Author SHA1 Message Date
dimitr
c1cab92cab 1) Reworked error reporting
2) Allowed positioned updates for explicit cursors
3) Fixed some possible server crashes
2004-11-17 14:50:33 +00:00
dimitr
a9370eefa8 Replaced "==" with a SQL-99 compliant distinct predicate. 2004-10-17 08:47:15 +00:00
dimitr
cd413c9b8a Added the equivalence operator. The major index optimizations are done.
Notes:
1) Some optimizations will follow after more deep analysis.
2) The syntax "==" is not yet agreed on. I'd prefer it to be changed.
2004-10-14 18:54:54 +00:00
dimitr
a1bbad7ccf The entire RSE handling in the parser is slightly rewritten. New join syntax is introduced.
Notes:
1) Some features are disabled (via isc_wish_list) yet due to their incomplete implementation.
2) The parser may become unstable or cause regressions. It will be fixed ASAP.
2004-10-13 18:37:53 +00:00
dimitr
9efeab8808 Fixed AV in the parser. 2004-10-03 11:39:03 +00:00
robocop
31ba754981 After talking to Ann, decided to disable several items:
- obsolete items like WAL and JOURNAL (cleaned in the past)
- crud from attempts never finished like the shared cache manager for Classic
- DSQL nodes that aren't used. This allowed freeing some keywords.
The functionality was disabled by commenting the code. No code has been deleted.
2004-10-03 04:49:04 +00:00
robocop
1994913da7 Bring DSQL up to date with UDF capabilities in the engine.
Introduce SCALAR_ARRAY token.
2004-08-27 04:52:32 +00:00
dimitr
e5ef9b2782 Ported IIF function from Yaffil.
Implemented as yet another abbrevation for CASE.
Added as a non-reserved keyword.
2004-08-19 11:19:48 +00:00
dimitr
c1407600f5 Allowed NULL to be a syntactical value. 2004-08-17 13:25:34 +00:00
alexpeshkoff
1591a54e5e Thread cleanup:
1. Added macros to declare thread entrypoints
2. THD_mutex_* functions use Firebird::Mutex
3. Thread local storage use fb_tls.h
2004-06-08 13:41:08 +00:00
skidder
16cc322505 Regenerate parse.cpp 2004-05-03 04:29:23 +00:00
alexpeshkoff
045e9dc8ec 1. removed any mentions of blk_pool() from engine (and method itself)
2. replaced 'struct lls' with 'template Stack'
2004-04-18 14:22:27 +00:00
robocop
663e3b16e7 Cleanup 2004-02-02 11:02:12 +00:00
dimitr
5deb857913 Removed obsolete EXECUTE VARCHAR syntax. 2004-01-31 13:35:37 +00:00
stryqx
56cff38d96 Regenerate after changing PAGE_SIZE to KW_PAGE_SIZE. 2004-01-27 07:09:21 +00:00
hvlad
b02fbb32a8 Added support for default parameters and EXECUTE BLOCK statement 2004-01-16 13:05:14 +00:00
robocop
06a4df3708 A requiem for JOURNAL and WAL.
Instructions in the list.
2004-01-06 10:33:18 +00:00
skidder
56c979e1e9 Update parse.cpp 2003-12-21 01:35:05 +00:00
robocop
f55c6f6f8c const correctness and cleanup 2003-11-10 09:16:38 +00:00
dimitr
270dcf6aa0 Added ROWS clause. FIRST/SKIP remains allowed in unions, although I still think it doesn't have much sense. 2003-11-07 14:10:16 +00:00
dimitr
08a9f40b52 1. Reworked cursor management
2. Added explicit cursor statements
3. Slightly reworked LEAVE code
4. Lots of cleanup
2003-11-02 12:28:30 +00:00
dimitr
f1cde7d613 Slightly reworked my labels implementation. 2003-09-28 11:12:03 +00:00
brodsom
4c9f386bd2 Macro cleaning 2003-09-28 00:36:28 +00:00
dimitr
f7aa490111 The final part of my little PLAN enhancement. 2003-09-14 15:37:05 +00:00
skidder
29812f3af7 Update parse.cpp 2003-09-08 21:26:56 +00:00
arnobrinkman
193d613f7c derived table support 2003-08-15 00:33:15 +00:00
skidder
64c12e15c4 Make Windows happier. DIFFERENCE defined as a macro there 2003-08-06 20:21:40 +00:00
skidder
143f8d2443 Implementation of fast physical incremental backup 2003-08-06 16:30:49 +00:00
brodsom
30ccb0a20b Solve macro conflicts on win 32 when using bison and msvc 2003-07-02 00:16:56 +00:00
dimitr
112c7022b6 Fixed (hopefully) savepoints implementation:
1) RELEASE SAVEPOINT statement is added
2) SAVEPOINT statement now re-establishes existing savepoint with the same name
3) all savepoint stuff is changed to use single BLR verb
2003-06-10 13:40:19 +00:00
dimitr
f9849a9534 Fixed migration rule in the parser which allows columns to be renamed. 2003-04-09 10:14:19 +00:00
dimitr
be5247dc1c 1. Cleanup
2. ROWS_AFFECTED is renamed to ROW_COUNT
(see SQL2002 specification)
3. CONNECTION_ID/TRANSACTION_ID are renamed to CURRENT_CONNECTION/CURRENT_TRANSACTION
(see SQL2002 recommendations for context functions)
4. Solved most of the shift/reduce conflicts and all reduce/reduce conflicts in the grammar
5. Fixed ambiguity in ORDER BY clause, when both the value and the clause itself could contain COLLATE word
(now explicit collation sequence of the value is used in the ordering logic)
6. Some of newly introduced tokens are made non-reserved
7. Added code to enable ORDER/GROUP BY ordinal when asterisk is used in the select list
(not sure which version it should go, so it's commented out so far)
2003-04-06 11:20:24 +00:00
brodsom
9784aedc80 - Update parser (with byacc 1.9) 2003-04-03 01:36:52 +00:00
dimitr
f833079b2f CONST -> const 2003-02-13 09:33:26 +00:00
skidder
884c38d6c4 Memory manager changes - added memory usage stats, empty extents are now deallocated 2003-01-18 21:45:24 +00:00
dimitr
55ed1b6444 1. Reworked internal info stuff once more.
2. Added DSQL support for parametrized events.
3. Fixed bug with cursors in triggers.
4. Added support for runtime trigger action checks (INSERTING/UPDATING/DELETING).
5. Fixed bug with concatenation and trashed RDB$FIELD_LENGTH.
2003-01-15 12:00:33 +00:00
dimitr
7f71918bc3 no message 2002-12-19 13:08:21 +00:00
dimitr
9dc68b4a7b Fixed bug with BREAK and partially implemented labels and LEAVE statement. 2002-12-18 15:01:50 +00:00
skidder
9b57d8b649 Several little changes to make engine compilable again on Linux 2002-12-16 21:19:51 +00:00
skidder
8e6622a20e Merging changes from skidder branch - explicit locks, savepoints, build system changes 2002-10-29 20:20:44 +00:00
dimitr
536d8c0552 1. Reworked internal_info implementation in both DSQL and JRD.
New helper class created to serve it properly.
2. Added exception re-raise semantics.
Syntax: EXCEPTION;
If there was handled exception, re-initiate it, otherwise evaluate to no-op.
3. Implemented run-time exception messages.
Syntax: EXCEPTION <exception_name> [<value>];
If <value> is specified, evaluate it and use instead of RDB$EXCEPTION_MESSAGE.
4. Added new SQLCODE and GDSCODE system variables.
Available in procedures/triggers only.
If there wasn't any exception raised, return zero (success), otherwise return an error code.
5. Implemented ROWS_AFFECTED system variable.
Available in procedures/triggers only.
Count rows affected by the last INSERT/UPDATE/DELETE statement.
For any other statement, result is always zero.
2002-09-28 14:04:35 +00:00
skidder
f8006cb881 added nulls first/last syntax support 2002-09-10 18:28:23 +00:00
dimitr
c6e838a144 Changed syntax of the INDEX subclause of a constraint declaration,
now it looks as:
[USING [ASC[ENDING] | DESC[ENDING]] INDEX index]
2002-09-04 12:09:25 +00:00
dimitr
7922269845 1. BIGINT is now the only keyword for the 64-bit exact numerics and it's available
in dialect 3 only.
2. BREAK statement has been disabled in triggers (like EXIT) because of the known
   BLR limitations. I hope it can be safely used in stored procedures though, hence
   I'd prefer to have it officially documented.
3. More complete implementation of the GROUP BY clause. You can group by internal
   functions and have ability to use more complex grouping conditions than before.
   By Arno Brinkman.
4. Allowed declaring and defining local variables at the same time.
   By Claudio Valderrama.
   Syntax: declare [variable] <var_name> <var_type> [{= | default} <default_value>]
5. Allowed ordinals to be used in the GROUP BY clause (like ORDER BY).
   By Arno Brinkman.
   Example: select extract(month from order_date), sum(order_sum) from orders group by 1
6. The first approach to the ALTER VIEW statement. Only high-level implementation so far.
   A lot of work in dfw.epp, metd.epp, etc. still required.
   By Dmitry Yemanov.
2002-08-11 08:04:54 +00:00
dimitr
15a9015236 1) Implemented CASE, NULLIF, COALESCE
2) Allowed grouping by internal functions (some work in pass1.cpp still required)
Thanks to Arno Brinkman.
2002-08-03 15:27:20 +00:00
skywalker
d89b1a0842 Changes to make fb2 compile super version for linux 2002-07-29 15:37:59 +00:00