8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-31 10:43:02 +01:00
Commit Graph

49 Commits

Author SHA1 Message Date
dimitr
b9f0242ffd Let's transfer procedure aliases to the engine similarly to how it is done for relations. This allows more precise plan reporting.
I hate to waste the BLR space in such a vandal way, so I'm open to any better suggestions.
2009-12-14 11:19:26 +00:00
asfernandes
d38d8dccbd Some changes aiming a future replacement of the metadata character set 2009-11-28 16:39:54 +00:00
asfernandes
d59001341c Misc 2009-10-31 17:31:48 +00:00
dimitr
e6909de7f7 Wipe out the SCROLLABLE_CURSORS code + minor cleanup.
Also, surfaced scrollability for PSQL cursors (without internal support yet).
2009-10-31 06:25:01 +00:00
asfernandes
ed0e0daeb3 - External Engines implementation.
- 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.
2009-10-21 00:42:38 +00:00
hvlad
9a749a272f Implement improvement CORE-2452 : Add Role Name in input parameters for EXECUTE STATEMENT 2009-05-14 10:21:47 +00:00
robocop
66b1227b22 Unused params, some formatting, cleanup. 2009-05-01 17:21:36 +00:00
asfernandes
ff5f8745fb Remove trailing spaces (.h files) 2008-12-05 00:56:15 +00:00
asfernandes
b550749a47 Fixed CORE-1246 - Incorrect column values with outer joins and derived tables 2008-09-07 19:44:48 +00:00
asfernandes
9150e6f4f2 This should fix regressions related to fixes of:
CORE-501 - Optimization problem with COALESCE
CORE-1343 - Bug with a simple case and a subquery
CORE-2041 - update or insert with gen_id() with wrong generator value

And should fix this one (snapshot build bug):
CORE-2051 - don't work subquery in COALESCE
2008-09-01 13:18:02 +00:00
asfernandes
d30d6410ea Misc 2008-06-13 01:42:58 +00:00
hvlad
66fd7d5488 Make blr_exec_stmt extensible in the future.
Sorry, recompile of stored objects using new EXECUTE STATEMENT is necessary. Hope the last time ;)
2008-06-10 22:43:30 +00:00
hvlad
fe3f8c184b New EXECUTE STATEMENT with support of external data source implementation 2008-04-09 20:18:47 +00:00
dimitr
d4d587d155 The merge continued. 2008-01-16 08:16:36 +00:00
hvlad
2b47bbe55b Revert files back after wrong commit 2007-11-19 00:21:18 +00:00
hvlad
86f1141328 Execute statement with support of external data source 2007-11-18 22:59:20 +00:00
asfernandes
b5a23c12d1 Improvements:
1) CORE-1387 - Add MILLISECONDS handling to EXTRACT, DATEADD and DATEDIFF functions
2) CORE-663 - EXTRACT(WEEK FROM DATE)
2007-07-31 01:22:59 +00:00
asfernandes
166fc0b865 Misc 2007-04-13 01:37:44 +00:00
asfernandes
8c7076b67f Port of Yaffil builtin functions 2007-04-12 15:56:34 +00:00
asfernandes
cec7eaa8b6 Some changes based on Claudio's comments 2007-01-21 15:35:35 +00:00
asfernandes
aca179f398 Full domain support and NOT NULL in PSQL 2007-01-17 01:19:01 +00:00
asfernandes
b7af27215e Allow usage of domains in PSQL (with TYPE OF syntax) 2006-08-19 02:52:39 +00:00
hvlad
b20aa92714 Common table expressions implementation 2006-08-01 20:37:58 +00:00
hvlad
fac53c8177 Added blr_src_info. Error call stack now contains not only
procedures\triggers names but line\column numbers also.
Thanks to Eugeney Putilin for idea
2006-07-04 14:44:43 +00:00
asfernandes
ab06a55292 Misc 2006-06-01 02:52:29 +00:00
dimitr
78c23ca592 Some preparation for RETURNING in UPDATE/DELETE.
To be completed in v3.0.
2006-05-31 18:02:34 +00:00
dimitr
54d4cc4ddf The core implementation of the LIST function. Unstable yet. 2006-04-24 16:56:58 +00:00
robocop
3389149564 The files rng.cpp, rng.h, rng_proto.h, bookmark.cpp and bookmark.h belong exclusively to PC_ENGINE, that's obsolete functionality.
Tenth step: some code was tagged PC_ENGINE but was for SCROLLABLE_CURSORS instead, hence restore it. Also, clean unused data members, obsolete BLR verbs and the like.
2006-02-07 08:08:49 +00:00
dimitr
15874a6ed9 Added optional seconds precision to CURRENT_TIME and CURRENT_TIMESTAMP
as agreed with Ann and others times ago.
2005-08-24 09:16:19 +00:00
asfernandes
559ce29c51 1) Replace length_ to strlen as noted by Claudio and Dmitry
2) Change USHORT to ULONG in intl.cpp
2005-06-06 18:14:10 +00:00
asfernandes
59213efe7e Merge INTL branch into HEAD 2005-05-27 22:45:31 +00:00
skidder
c40eb08a27 Remove CURRENT_DATABASE keyword 2004-11-22 20:50:34 +00:00
skidder
1e26d6c80d CURRENT_DATABASE implementation. Established identity may also be used for isc_info_db_id datum 2004-11-11 05:37:52 +00:00
dimitr
09c51110b4 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 19:09:19 +00:00
skidder
92576263ee Fix minor flaw in explicit nulls placement design. This change doesn't cause any
user-visible changes in engine behavior. Fix is critical for future development
in this area and needs to be backported in B1_5_Release.
2003-12-21 00:07:03 +00:00
dimitr
9b20660785 1. Fixed GDSCODE and SQLCODE variables
2. Enhanced ROW_COUNT variable
3. Fixed EXCEPTION statement
4. Added explicit cursor internals
5. Some cleanup
2003-11-02 11:55:17 +00:00
brodsom
64c31be213 extern cleaning
removing underscores in macros
DLL_EXPORT cleaning
2003-10-03 01:34:14 +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
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
alexpeshkoff
878b0b6091 Fixed EXECUTE STATEMENT to support INTO clause 2003-03-01 19:19:23 +00:00
dimitr
4aaa42fe3f New BLR verb for parametrized events. 2003-01-15 11:40:40 +00:00
dimitr
c6ee6f0795 Removed unused BLR codes. This code space should be reused later. 2002-12-23 11:23:07 +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
f1b4c04d42 Added nulls first/last support 2002-09-10 18:34:00 +00:00
dimitr
25de98bfd8 Merging changes from fb1. 2002-06-29 13:03:13 +00:00
dimitr
c5f50577cb 1. New system variables - CONNECTION_ID and TRANSACTION_ID
2. Universal triggers
2002-06-14 12:09:37 +00:00
dimitr
8463265fc1 Implemented 'EXECUTE VARCHAR' command. 2002-04-04 13:53:20 +00:00
tamlin
9a776a604e First steps towards a C++ conversion. 2001-05-23 13:26:42 +00:00