mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Made FUNCTIONs work in insert and select queries, as well as nested function invocations.
Had to add a cahing mechanism which is in parts an ugly kludge, but it will be reworked once the real SP caching is implemented.
This commit is contained in:
@ -46,8 +46,11 @@ public:
|
||||
int m_type; // TYPE_ENUM_FUNCTION or TYPE_ENUM_PROCEDURE
|
||||
enum enum_field_types m_returns; // For FUNCTIONs only
|
||||
my_bool m_simple_case; // TRUE if parsing simple case, FALSE otherwise
|
||||
#if 0
|
||||
// We're not using this at the moment.
|
||||
List<char *> m_calls; // Called procedures.
|
||||
List<char *> m_tables; // Used tables.
|
||||
#endif
|
||||
|
||||
static void *operator new(size_t size)
|
||||
{
|
||||
@ -59,7 +62,7 @@ public:
|
||||
/* Empty */
|
||||
}
|
||||
|
||||
sp_head(LEX_STRING *name, LEX* lex);
|
||||
sp_head(LEX_STRING *name, LEX *lex);
|
||||
|
||||
int
|
||||
create(THD *thd);
|
||||
@ -118,7 +121,7 @@ private:
|
||||
|
||||
Item_string *m_name;
|
||||
Item_string *m_defstr;
|
||||
LEX *m_call_lex; // The CALL's own lex
|
||||
sp_pcontext *m_pcont; // Parse context
|
||||
LEX m_lex; // Temp. store for the other lex
|
||||
DYNAMIC_ARRAY m_instr; // The "instructions"
|
||||
typedef struct
|
||||
|
Reference in New Issue
Block a user