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

85 Commits

Author SHA1 Message Date
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
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
robocop
1824343930 Cleanup.
Fixed a linking error with MSVC6, too.
2004-03-28 09:10:30 +00:00
skidder
f26d84f76b 1. POSIX build libraries export only public API. 2. Unify exports for PROD_BUILD and DEV_BUILD. 3. Support for context memory pools. 4. Memory manager has lower memory overhead exceptionally on 64 bit targets 2004-03-25 23:12:50 +00:00
robocop
e6187cecd2 Cleanup
Some bug fixes
Style
2004-03-07 07:58:55 +00:00
stryqx
501ba459c9 Change PAGE_SIZE to KW_PAGE_SIZE so as not to conflict with system define
on FreeBSD.
2004-01-26 07:06:37 +00:00
hvlad
d09206678b Added support for default parameters and EXECUTE BLOCK statement 2004-01-16 10:43:21 +00:00
robocop
9fafc348bf const correctness
vars in scope
minimal interface cleanup
small bug fixes
2003-11-28 06:48:34 +00:00
robocop
a94dbd85fd const correctness and other minor items 2003-11-18 07:58:35 +00:00
stryqx
7715c0db1b Undefine PAGE_SIZE to allow successful compile with gcc 3.3.3. 2003-11-10 06:27:45 +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
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
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
a399bf764d Changes to allow use of bison to create parse.cpp 2003-03-31 23:40:53 +00:00
dimitr
a6b7f7c3ef Cleanup. 2003-03-16 12:04:13 +00:00
dimitr
f833079b2f CONST -> const 2003-02-13 09:33:26 +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
9dc68b4a7b Fixed bug with BREAK and partially implemented labels and LEAVE statement. 2002-12-18 15:01:50 +00:00
alexpeshkoff
90cdfbdaf5 Rename all links to why.cpp handle to struct why_hndl *
Warning! Don't commit parse.cpp and dsql.tab.h, because:
1. I use another YACC version.
2. They must be removed from CVS at all.

Execute STATEMENT also here
2002-12-16 15:38:26 +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
dimitr
717c1200ea Fixed my own damned mistake. Sorry to everyone who got scared by this change ;-) 2002-07-30 09:49:16 +00:00
dimitr
4b0c2969b3 Stay in-sync with Mark's changes and make them win32 friendly. 2002-07-30 07:23:40 +00:00
skywalker
d89b1a0842 Changes to make fb2 compile super version for linux 2002-07-29 15:37:59 +00:00