dimitr
323bae2372
1. MAP renamed to DSQL_MAP
...
2. Minor cleanup
3. Fixed BREAK/LEAVE code to support FOR EXECUTE STATEMENT loops
4. Added support for loop labels and LEAVE <label> statement
5. Fixed SUBSTRING to support value expressions as its arguments
2003-08-26 07:13:33 +00:00
arnobrinkman
5f844f7428
added comment
2003-08-16 13:14:35 +00:00
arnobrinkman
9e82b6d20b
Fixed ambiguous columnname problems with derived tables.
...
Added support for unnamed derived tables.
2003-08-16 00:36:54 +00:00
arnobrinkman
c12b4da4b1
added comment and fix derived table bug inside view, that couldn't use unions.
2003-08-15 14:38:33 +00:00
arnobrinkman
0d203a2c36
derived table support
2003-08-15 00:02:18 +00:00
arnobrinkman
e9953885e5
forgotten cleanup, thanks for your attention BLAS
2003-08-11 01:06:52 +00:00
arnobrinkman
77d9804ed0
Support all expressions directly in GROUP BY clause
2003-08-10 15:19:43 +00:00
arnobrinkman
0100d93cc9
Added optional AS keyword to table alias
2003-08-10 10:06:34 +00:00
brodsom
e3d16f06ab
-Fix cast warnings.
...
-Remove unneeded casts
2003-08-09 21:57:50 +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
skidder
905670f5f9
Separate DSQL cursors management and explicit locks as suggested by Ivan Prenosil
2003-07-11 22:36:05 +00:00
skidder
659e44cc45
Fix problem in non-reserved Inserting/Updating/Deleting implementation found by Dmitry Emanov
2003-07-07 23:49:29 +00:00
dimitr
9bb1284b19
Correct the parser a bit.
2003-07-02 09:40:55 +00:00
brodsom
30ccb0a20b
Solve macro conflicts on win 32 when using bison and msvc
2003-07-02 00:16:56 +00:00
dimitr
5eaf6394d1
Some savepoint-related changes:
...
1. release single savepoint
2. fixed exception handling
2003-06-26 10:44:16 +00:00
dimitr
2740167100
Fixed one more limitation in the parser.
2003-06-24 09:28:38 +00:00
skidder
213752d768
Oops. Part of my own RELEASE SAVEPOINT implementation leaked into to the previous commit
2003-06-15 22:26:04 +00:00
skidder
ee856f7729
Make INSERTING/UPDATING/DELETING non-reserved keywords. The patch causes compilation performance degradation for statements containing a lot of braces, but my testing indicated that this effect is surely unmeasurable for nesting level up to 250
2003-06-15 22:08:16 +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
7ffbfc1fd1
Let's be GNU Bison 1.75 friendly.
2003-06-05 12:37:49 +00:00
skidder
e0eab37746
Fix server crash when SKIP syntax with braces used (SF 747567). Really strange, but problem does not affect Linux version. This is why it escaped my testing
2003-06-02 16:11:13 +00:00
skidder
d8bae3c569
Add comment
2003-05-24 15:18:35 +00:00
skidder
b9480b21e1
Make FIRST/SKIP keywords non-reserved
2003-05-23 16:55:40 +00:00
aafemt
b3436b5cd7
STATUS -> ISC_STATUS
2003-04-10 06:32:58 +00:00
dimitr
1205d8c4e5
Misprint.
2003-04-09 10:51:42 +00:00
dimitr
566516464c
no message
2003-04-09 10:18:54 +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
7d7cef5157
no message
2003-04-06 11:34:31 +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
eku
53367847f5
SVR4 yacc doesn't like C++ style comments!
2003-04-03 06:55:32 +00:00
brodsom
9784aedc80
- Update parser (with byacc 1.9)
2003-04-03 01:36:52 +00:00
brodsom
a399bf764d
Changes to allow use of bison to create parse.cpp
2003-03-31 23:40:53 +00:00
alexpeshkoff
878b0b6091
Fixed EXECUTE STATEMENT to support INTO clause
2003-03-01 19:19:23 +00:00
dimitr
7d4444165b
Cleanup.
2003-02-24 09:37:52 +00:00
skidder
aade54d330
Fixed bug with line number tracking introduced recently + some cleanup
2003-02-17 14:56:58 +00:00
hippoman
ad14320d0e
* formated dsql.h comments to make Doxygen happy..
...
* changed DSQL_debug values as follow..
/*! \var unsigned DSQL_debug
\brief Debug level
0 No output
1 Display output tree in PASS1_statment
2 Display input tree in PASS1_statment
4 Display ddl BLR
8 Display BLR
16 Display PASS1_rse input tree
32 Display SQL input string
64 Display BLR in dsql/prepare
> 256 Display yacc parser output level = DSQL_level>>8
*/
2003-02-15 02:05:10 +00:00
eku
6b0df2eb51
Fixed "'SHARED' redefined"
2003-02-14 14:22:10 +00:00
dimitr
f833079b2f
CONST -> const
2003-02-13 09:33:26 +00:00
tamlin
bc383ff498
A bit const correctness added and some reinterpret_casts removed.
...
Changed DSQL's str to actually hold char.
2003-02-12 19:28:13 +00:00
brodsom
ab6ba391f2
Change wrong define
2003-02-09 23:31:50 +00:00
brodsom
3a9b561a11
Remove JPN_ defines
2003-02-07 18:46:49 +00:00
dimitr
9ba418a493
Disallowed PLAN clause in views until it works.
2003-01-23 09:18:59 +00:00
dimitr
fd2f852e49
Cleanup.
2003-01-18 19:39:12 +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
skidder
2975b16cce
Allow arbitrary expressions in ORDER-BY clause
2003-01-09 16:50:24 +00:00
dimitr
411c994122
Now we understand single-line comments (--) in any position of the SQL statement.
2002-12-19 14:48:22 +00:00
dimitr
8842052537
Prepared parser to allow non-reserved words as valid symbol names.
2002-12-19 13:14:41 +00:00
dimitr
2861cbf063
no message
2002-12-19 08:57:53 +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
dimitr
2300540ff8
Fixed serious bug with views I unfortunately introduced in Alpha 5 :-(
2002-12-11 10:09:22 +00:00
eku
5b8ffd81c2
Removed unused variables.
2002-12-10 11:53:53 +00:00
dimitr
6e51db6e6e
1. Implemented ORDER BY clause in subqueries.
...
2. Disallowed FIRST/SKIP for views.
3. Allowed zero as valid argument for FIRST.
2002-12-03 18:04:36 +00:00
hippoman
9a8f0768b9
Changed struct fld and FLD to local module names
2002-11-30 17:45:02 +00:00
skidder
2b995ac2ab
Make SQLDA parameter mapping consistent with order and number of parameters in source SQL string
2002-11-24 15:22:03 +00:00
hippoman
7387e6fb70
changed nod,tra,req,trg,rel,ctx,prc struct names to local module names
2002-11-20 23:18:16 +00:00
hippoman
c75a6d3019
* Changed NOD struct name to DSQL_NOD.
2002-11-11 19:08:37 +00:00
dimitr
8177404f3f
A bit improved parser's debug output. Thanks to Ignacio J. Ortega.
2002-11-10 07:58:13 +00:00
dimitr
1cd12e4972
Fixed small parser bug. Thanks to Ignacio J. Ortega.
2002-11-10 07:48:52 +00:00
dimitr
eb75186f5e
Cleanup.
2002-11-01 08:53:05 +00:00
dimitr
1d4e51d5a0
A bit more cleanup.
2002-10-31 13:08:18 +00:00
skidder
8e6622a20e
Merging changes from skidder branch - explicit locks, savepoints, build system changes
2002-10-29 20:20:44 +00:00
dimitr
41b82b0e77
Hide ALTER VIEW functionality until it works good.
2002-10-02 13:24:59 +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
6d64014e57
Changed engine to store source file name/line number information for EVERY allocation when DEBUG_GDS_ALLOC is defined. All allocation should be done using FB_NEW or FB_NEW_RPT macros instead of keyword new since now
2002-09-25 17:12:16 +00:00
skidder
f8006cb881
added nulls first/last syntax support
2002-09-10 18:28:23 +00:00
dimitr
8b131027ea
More complete implementation of the INDEX subclause of a constraint declaration.
2002-09-06 07:51:33 +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
b36015e6e9
- allowed user-defined index names for PK/FK/UK constraints
...
- fixed ugly hardcoded name checks for primary/foreign keys
- implemented RECREATE VIEW statement
2002-09-01 15:49:03 +00:00
dimitr
94fa429dc4
- allowed user-defined index names for PK/FK/UK constraints
...
- fixed ugly hardcoded name checks for primary/foreign keys
- implemented RECREATE VIEW statement
2002-09-01 15:44:45 +00:00
dimitr
b45eb004a2
Implemented CREATE OR ALTER statement for procedures/triggers/views.
2002-08-27 07:48:34 +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
skywalker
89e06a1b43
Merge final changes from fb1 tree.
2002-07-06 05:32:02 +00:00
skywalker
854b35d650
Change DEBUG_KEYWORD to KW_DEBUG,
...
few more changes in parse.y (mostly post fb1 changes)
2002-07-05 16:01:08 +00:00
skywalker
350b251820
Changes to get compiling on linux (post fb1 changes).
2002-07-05 15:00:26 +00:00
dimitr
88edfc0714
Merging changes from fb1 (stage 2 - fixing porting errors).
2002-07-02 12:20:50 +00:00
skywalker
13d2715fd8
Added LEX_StringIsAKeyword function to avoid an awkward #include from isql
...
module.
2002-06-29 13:47:28 +00:00
skywalker
ae266af6d1
Merging changes from fb1.
2002-06-29 06:56:51 +00:00
dimitr
745d1093a2
Enabled support for empty BEGIN...END blocks
2002-06-20 11:42:15 +00:00
dimitr
c6cbd67c49
Force SP parameters to behave the same way in both syntaxes (SELECT FROM and EXECUTE PROCEDURE), thus enabling expressions, UDFs, etc. to be passed as a parameter.
2002-06-20 08:00:29 +00:00
dimitr
f84869f782
While I'm in touch with the parser - INT64 and LARGEINT aliases for the intenal dtype_int64 data type.
2002-06-15 09:38:14 +00:00
dimitr
95281ccf25
1. New system variables - CONNECTION_ID and TRANSACTION_ID
...
2. Universal triggers
(parser changes are not very nice, but at least it works;
perhaps it should be polished up a bit later)
2002-06-14 12:07:20 +00:00
dimitr
8463265fc1
Implemented 'EXECUTE VARCHAR' command.
2002-04-04 13:53:20 +00:00
seanleyne
8e93b8a859
Code cleanup, removed old Win3.1 port from routines I missed the first time
2002-02-24 16:39:31 +00:00
tamlin
80f7fb6dd4
New C++ memory pool
2001-12-24 02:51:06 +00:00
skywalker
4c4bc9a95c
Global changes for new Makefile and firebird2 compile on linux
2001-07-29 23:43:24 +00:00
bellardo
747d13c0d5
Changes to bring FB2 to c++ on *nix.
2001-07-12 05:46:06 +00:00
tamlin
9a776a604e
First steps towards a C++ conversion.
2001-05-23 13:26:42 +00:00