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

249 Commits

Author SHA1 Message Date
arnobrinkman
a6deb7b96e Fix mistake, noticed by Claudio 2005-07-31 14:13:30 +00:00
arnobrinkman
8a6f8e4a1c Fix nullable flag for descriptor generated by MAKE_desc_from_list() 2005-07-28 13:35:08 +00:00
dimitr
0b3d60bbde Fixed the GEN_ID(<name>, NULL) issue (reported by Claudio). 2005-07-27 07:36:03 +00:00
asfernandes
2cae7d39b7 Simplification 2005-06-17 01:33:14 +00:00
asfernandes
4efb74fc51 Removed some compiler messages 2005-06-13 02:12:14 +00:00
asfernandes
a44e8ffbd0 Fix TRIM(NULL FROM <something>) to return NULL 2005-06-12 21:20:12 +00:00
asfernandes
3d93cdf69c Fix possible problems with larger columns sizes noted by Claudio 2005-06-10 02:03:08 +00:00
asfernandes
3647497a08 Misc. 2005-06-06 20:18:12 +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
robocop
b8d1f00f94 - Corrections and changes to Adriano's commit, subject to his inspection.
- Solved an endless loop with trim and zero-length trim characters, etc.
- Some places are signaled with FB_COMPILER_MESSAGE for prompt attention.
2005-06-06 08:30:03 +00:00
asfernandes
59213efe7e Merge INTL branch into HEAD 2005-05-27 22:45:31 +00:00
hvlad
33e495c7ad Fixed unregistered bug - AV in incorrect written EXECUTE BLOCK statement. For example :
EXECUTE BLOCK AS
BEGIN
  INSERT INTO DUMMY (ID) VALUES(?);
END
Thanks to Arno
2005-05-12 17:46:31 +00:00
arnobrinkman
0aea42263e Second fix for items-list where NULLs default descriptor shouldn't be used to determine the final output descriptor.
Only UNIONs were affected by this bug.
2005-04-20 13:06:42 +00:00
arnobrinkman
cfc703f766 Fix bug with alias hiding datatype by datatype-list coercion 2005-04-19 09:55:53 +00:00
arnobrinkman
eac753f709 Fix typos found by Tom Cole 2005-03-13 12:17:32 +00:00
robocop
541e3054ac Put common code into functions. 2005-02-14 05:51:25 +00:00
asfernandes
42efc07a3a NULL literals should have DSC_nullable in dsc_flags 2005-02-13 00:37:18 +00:00
dimitr
3f3eb11ba4 Return relation alias via API. SQLDA stays untouched for the time being. 2005-01-23 15:53:36 +00:00
dimitr
3d826cc06c Minor corrections. 2005-01-05 12:15:51 +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
5a67d3a091 Fixed yet another issue with make.cpp noticed by Dimitry Sibiryakov. 2004-09-22 06:54:17 +00:00
dimitr
39a718784b Fixed another my bug, spotted by Arno. 2004-09-13 19:36:30 +00:00
dimitr
72e9a4923b Correction. 2004-09-12 10:48:55 +00:00
dimitr
f32272d076 Fixed a bug I introduced today. 2004-09-05 21:50:54 +00:00
dimitr
e58ba55a55 Solved issues with literal NULLs in the CASE-based functions.
To be reviewed by Arno.
2004-09-05 07:23:42 +00:00
dimitr
f45dc04f6a Allowed EXTRACT(<part> FROM NULL) to return NULL of SMALLINT/INT (depending on <part>) datatype. 2004-09-04 18:43:11 +00:00
dimitr
cf89467735 Let's describe literal NULLs correctly in expressions. 2004-09-04 18:24:12 +00:00
alexpeshkoff
31039a254e next step preparing to allocate auto objects memory from appropriate pool 2004-08-16 12:28:43 +00:00
dimitr
9dc9adf017 Fixed implementations of concatenation and SUBSTRING function.
Used new messages for error reporting. Changes should be fully SQLDA-compatible.
2004-08-02 19:49:12 +00:00
robocop
320fe78b42 Misc changes 2004-06-21 02:48:47 +00:00
arnobrinkman
ffd4d94124 Fix problems with NUMERIC and DECIMAL datatypes in MAKE_desc_from_list() for Dialect 1.
This affects CASE, COALESCE and the auto-union cast.
2004-06-19 21:29:50 +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
robocop
f8f159dc9e Changing some variables that have a trailing underscore to allow conflict with C++ keywords or engine structs. 2004-05-31 02:34:35 +00:00
alexpeshkoff
9a34ce553c make bool (isEmpty/hasData) checks for string and stack safe 2004-05-27 16:26:52 +00:00
brodsom
06f7148859 -Replace *_thread_data macros with inline functions 2004-05-22 14:23:10 +00:00
robocop
441817bd82 1.- Misc changes
2.- Style
3.- Recover dsc_ttype in dsc after Blas' cleanup as a synonym for dsc_sub_type in text types
2004-05-21 06:16:17 +00:00
brodsom
68cb86b274 - Remove *_THREAD_DATA definitions from thd.h, are unneeded and conflicts with definitions in providers/services main headers (which need to use undef).
- Use different names for each service/provider *_THREAD_DATA macros.
2004-05-19 18:14:29 +00:00
brodsom
b30a0b8799 Macro cleaning 2004-05-12 00:02:37 +00:00
skidder
43cb0d1ce4 Y-Valve handle translation layer 2004-05-02 23:06:37 +00:00
brodsom
2f4865a195 Replace defines for constants 2004-04-29 14:51:02 +00:00
alexpeshkoff
e0ce53cbec fixed number problems after lls to Stack conversion 2004-04-21 14:23:46 +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
e6187cecd2 Cleanup
Some bug fixes
Style
2004-03-07 07:58:55 +00:00
robocop
663e3b16e7 Cleanup 2004-02-02 11:02:12 +00:00
skidder
08eee5ebaa Further AMD64 fixes. Given this fixes you may start playing with databases using isql_static. 2004-01-21 07:18:30 +00:00
robocop
ad0b5c4de3 General cleanup 2003-12-22 10:00:59 +00:00
robocop
9fafc348bf const correctness
vars in scope
minimal interface cleanup
small bug fixes
2003-11-28 06:48:34 +00:00
arnobrinkman
e944221d79 bugfix: SF841696 calculated output descriptor for COALESCE/CASE should give charsets other then NONE/ASCII precedence 2003-11-22 22:43:24 +00:00
brodsom
c5253ae8a5 -Replace gds__ constants with isc_ contants
-Replace codes.h with iberror.h (or remove)
-Move gds__vax_integer and gds__event_block* to alt.cpp and isc_ to gds.cpp
-Use ISC_QUAD internally
-Use isc_vax_integer internally
2003-11-11 12:19:20 +00:00
robocop
f55c6f6f8c const correctness and cleanup 2003-11-10 09:16:38 +00:00
brodsom
43683ea52b Removing gdsold.h 2003-11-07 23:27:24 +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
brodsom
ff070a16a8 Replacing assert with fb_assert 2003-11-03 23:59:24 +00:00
skidder
7b99b8a57b Basic INTL cleanup.
- Rework (mostly undo) John's changes
- Some function type safety
- Make INTL OO layer very thin (this should slightly improve performance)
2003-11-03 17:14:45 +00:00
robocop
cda707bd36 const correctness and other related changes 2003-11-01 10:26:43 +00:00
brodsom
76c7382b78 Macro cleaning 2003-10-20 22:41:11 +00:00
brodsom
938e66eb2f Macro cleaning 2003-10-14 22:22:32 +00:00
robocop
bc93cc3c0b const correctness, vars in scope, etc. 2003-10-05 06:27:16 +00:00
aafemt
b5994fabad sym -> dsql_sym + some 'struct' cleanup 2003-10-01 10:58:07 +00:00
robocop
c931a674c2 Cleanup.
Hopefully harmless
It should fix the issue introduced with constness in gds__interprete for current applications.
2003-09-29 12:43:14 +00:00
brodsom
4c9f386bd2 Macro cleaning 2003-09-28 00:36:28 +00:00
arnobrinkman
4a37161c8d Changed internally derived-table support to better readable/understanding code 2003-09-04 15:02:22 +00:00
arnobrinkman
f691e5d79c Change types that were used as booleans to the real bool type 2003-09-03 23:52:47 +00:00
arnobrinkman
6027b94811 Change code-style and prepare for more info on error-message 2003-08-27 23:00:43 +00:00
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
11b4fcf5b7 1) Make COALESCE/CASE output descriptor more SQL-standard.
Exception is that we allow mixing datatypes with (var)char (except blob), because all datatypes are convertable to character-type and because this functionallity was available from 1st day COALESCE is introduced inside Firebird.
2) Fix bug with expressions without fields inside aggregate-functions.
Example :
  SELECT
    (SELECT Count(1) FROM RDB$DATABASE)
  FROM
    RDB$RELATIONS
2003-08-25 23:35:30 +00:00
arnobrinkman
79c10074c0 Already fix COALESCE/CASE output-descriptor behaviour inside HEAD branch to conform with SQL-standard.
FB1.5_RELEASE will follow when error-message is added
2003-08-24 22:15:23 +00:00
arnobrinkman
294dddc865 bugfix: CASE / COALESCE functions determine always NUMERIC even when all values where int or long. 2003-08-11 00:43:42 +00:00
dimitr
1268d5f7aa Cleanup. 2003-04-06 10:09:38 +00:00
brodsom
b674d5ac89 Avoid signed unsigned comparisons 2003-04-03 18:43:08 +00:00
brodsom
2c329ec811 - Spli macro to avoid not used warnings
- Minor code formatting
2003-04-03 09:29:10 +00:00
arnobrinkman
f83a6084ed bugfix:
1) bug with sub-selects inside COALESCE function.
2) bug with parameter ordering.
2003-03-31 19:11:55 +00:00
hippoman
1cb0c17ace * Formated comments to make Doxygen Happy.. 2003-02-15 03:01:51 +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
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
eku
5b8ffd81c2 Removed unused variables. 2002-12-10 11:53:53 +00:00
skidder
c60c29f4c8 Oops. Forgot to enable parameter duplication in parameter bug emulation mode 2002-12-03 13:48:18 +00:00
skidder
5187fa6c44 Added configuration parameter to enable older parameter ordering behavior 2002-12-03 13:37:06 +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
arnobrinkman
b986fe4438 bug : UDF node didn't contain any character set, was always NONE. 2002-11-20 23:48:34 +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
dimitr
776c54bdac Renamed MSG to DSQL_MSG. 2002-11-19 12:35:28 +00:00
hippoman
62cf7d7a88 change TRA,REQ,TRG,REL,CTX or PRC, to module local names. 2002-11-17 00:04:19 +00:00
hippoman
c75a6d3019 * Changed NOD struct name to DSQL_NOD. 2002-11-11 19:08:37 +00:00
arnobrinkman
9b24424cab AB: "cosmetic changes" 2002-10-19 00:49:23 +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
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
89e06a1b43 Merge final changes from fb1 tree. 2002-07-06 05:32:02 +00:00
dimitr
88edfc0714 Merging changes from fb1 (stage 2 - fixing porting errors). 2002-07-02 12:20:50 +00:00
skywalker
ae266af6d1 Merging changes from fb1. 2002-06-29 06:56:51 +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
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
tamlin
9a776a604e First steps towards a C++ conversion. 2001-05-23 13:26:42 +00:00