mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Implemented the stored procedure data access characteristics:
NO SQL CONTAINS SQL (default) READS SQL DATA MODIFIES SQL DATA These are needed as hints for the replication. (Before this, we did have the default in the mysql.proc table, but no support in the parser.) mysql-test/r/sp.result: Modified test cases for new data access characteristics. mysql-test/t/sp.test: Modified test cases for new data access characteristics. scripts/mysql_create_system_tables.sh: We now support all the SP data access characteristics (not just CONTAINS SQL). scripts/mysql_fix_privilege_tables.sql: We now support all the SP data access characteristics (not just CONTAINS SQL). sql/lex.h: New tokens for SP data access characteristics. sql/sp.cc: Store, print and support alter of data access characteristics. sql/sp_head.cc: Added SP_ prefix to some symbols. sql/sql_lex.h: Added SP_ prefix to some symbols, and added SP data access enum. sql/sql_yacc.yy: Parse SP data access characteristics. (And allow "alter ... language sql", mostly as a formality, it was accidently put in the wrong clause before.)
This commit is contained in:
@ -94,11 +94,23 @@ enum enum_sql_command {
|
||||
#define DESCRIBE_NORMAL 1
|
||||
#define DESCRIBE_EXTENDED 2
|
||||
|
||||
enum suid_behaviour
|
||||
enum enum_sp_suid_behaviour
|
||||
{
|
||||
IS_DEFAULT_SUID= 0, IS_NOT_SUID, IS_SUID
|
||||
SP_IS_DEFAULT_SUID= 0,
|
||||
SP_IS_NOT_SUID,
|
||||
SP_IS_SUID
|
||||
};
|
||||
|
||||
enum enum_sp_data_access
|
||||
{
|
||||
SP_DEFAULT_ACCESS= 0,
|
||||
SP_CONTAINS_SQL,
|
||||
SP_NO_SQL,
|
||||
SP_READS_SQL_DATA,
|
||||
SP_MODIFIES_SQL_DATA
|
||||
};
|
||||
|
||||
|
||||
#define DERIVED_SUBQUERY 1
|
||||
#define DERIVED_VIEW 2
|
||||
|
||||
@ -599,8 +611,9 @@ typedef struct st_alter_info
|
||||
struct st_sp_chistics
|
||||
{
|
||||
LEX_STRING comment;
|
||||
enum suid_behaviour suid;
|
||||
enum enum_sp_suid_behaviour suid;
|
||||
bool detistic;
|
||||
enum enum_sp_data_access daccess;
|
||||
};
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user