mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Add all SQL_MODE settings to proc table. (Bug #8902)
This commit is contained in:
@ -11,3 +11,4 @@ show create table func;
|
||||
show create table tables_priv;
|
||||
show create table columns_priv;
|
||||
show create table procs_priv;
|
||||
show create table proc;
|
||||
|
@ -154,5 +154,26 @@ procs_priv CREATE TABLE `procs_priv` (
|
||||
PRIMARY KEY (`Host`,`Db`,`User`,`Routine_name`),
|
||||
KEY `Grantor` (`Grantor`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Procedure privileges'
|
||||
show create table proc;
|
||||
Table Create Table
|
||||
proc CREATE TABLE `proc` (
|
||||
`db` char(64) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`name` char(64) NOT NULL default '',
|
||||
`type` enum('FUNCTION','PROCEDURE') NOT NULL default 'FUNCTION',
|
||||
`specific_name` char(64) NOT NULL default '',
|
||||
`language` enum('SQL') NOT NULL default 'SQL',
|
||||
`sql_data_access` enum('CONTAINS_SQL','NO_SQL','READS_SQL_DATA','MODIFIES_SQL_DATA') NOT NULL default 'CONTAINS_SQL',
|
||||
`is_deterministic` enum('YES','NO') NOT NULL default 'NO',
|
||||
`security_type` enum('INVOKER','DEFINER') NOT NULL default 'DEFINER',
|
||||
`param_list` blob NOT NULL,
|
||||
`returns` char(64) NOT NULL default '',
|
||||
`body` blob NOT NULL,
|
||||
`definer` char(77) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`created` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
|
||||
`modified` timestamp NOT NULL default '0000-00-00 00:00:00',
|
||||
`sql_mode` set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE') NOT NULL default '',
|
||||
`comment` char(64) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
PRIMARY KEY (`db`,`name`,`type`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Stored Procedures'
|
||||
show tables;
|
||||
Tables_in_test
|
||||
|
@ -702,7 +702,17 @@ then
|
||||
c_p="$c_p 'MYSQL323',"
|
||||
c_p="$c_p 'MYSQL40',"
|
||||
c_p="$c_p 'ANSI',"
|
||||
c_p="$c_p 'NO_AUTO_VALUE_ON_ZERO'"
|
||||
c_p="$c_p 'NO_AUTO_VALUE_ON_ZERO',"
|
||||
c_p="$c_p 'NO_BACKSLASH_ESCAPES',"
|
||||
c_p="$c_p 'STRICT_TRANS_TABLES',"
|
||||
c_p="$c_p 'STRICT_ALL_TABLES',"
|
||||
c_p="$c_p 'NO_ZERO_IN_DATE',"
|
||||
c_p="$c_p 'NO_ZERO_DATE',"
|
||||
c_p="$c_p 'INVALID_DATES',"
|
||||
c_p="$c_p 'ERROR_FOR_DIVISION_BY_ZERO',"
|
||||
c_p="$c_p 'TRADITIONAL',"
|
||||
c_p="$c_p 'NO_AUTO_CREATE_USER',"
|
||||
c_p="$c_p 'HIGH_NOT_PRECEDENCE'"
|
||||
c_p="$c_p ) DEFAULT 0 NOT NULL,"
|
||||
c_p="$c_p comment char(64) binary DEFAULT '' NOT NULL,"
|
||||
c_p="$c_p PRIMARY KEY (db,name,type)"
|
||||
|
@ -422,7 +422,17 @@ CREATE TABLE IF NOT EXISTS proc (
|
||||
'MYSQL323',
|
||||
'MYSQL40',
|
||||
'ANSI',
|
||||
'NO_AUTO_VALUE_ON_ZERO'
|
||||
'NO_AUTO_VALUE_ON_ZERO',
|
||||
'NO_BACKSLASH_ESCAPES',
|
||||
'STRICT_TRANS_TABLES',
|
||||
'STRICT_ALL_TABLES',
|
||||
'NO_ZERO_IN_DATE',
|
||||
'NO_ZERO_DATE',
|
||||
'INVALID_DATES',
|
||||
'ERROR_FOR_DIVISION_BY_ZERO',
|
||||
'TRADITIONAL',
|
||||
'NO_AUTO_CREATE_USER',
|
||||
'HIGH_NOT_PRECEDENCE'
|
||||
) DEFAULT 0 NOT NULL,
|
||||
comment char(64) binary DEFAULT '' NOT NULL,
|
||||
PRIMARY KEY (db,name,type)
|
||||
@ -436,4 +446,36 @@ ALTER TABLE proc MODIFY name char(64) DEFAULT '' NOT NULL,
|
||||
'NO_SQL',
|
||||
'READS_SQL_DATA',
|
||||
'MODIFIES_SQL_DATA'
|
||||
) DEFAULT 'CONTAINS_SQL' NOT NULL;
|
||||
) DEFAULT 'CONTAINS_SQL' NOT NULL,
|
||||
MODIFY sql_mode
|
||||
set('REAL_AS_FLOAT',
|
||||
'PIPES_AS_CONCAT',
|
||||
'ANSI_QUOTES',
|
||||
'IGNORE_SPACE',
|
||||
'NOT_USED',
|
||||
'ONLY_FULL_GROUP_BY',
|
||||
'NO_UNSIGNED_SUBTRACTION',
|
||||
'NO_DIR_IN_CREATE',
|
||||
'POSTGRESQL',
|
||||
'ORACLE',
|
||||
'MSSQL',
|
||||
'DB2',
|
||||
'MAXDB',
|
||||
'NO_KEY_OPTIONS',
|
||||
'NO_TABLE_OPTIONS',
|
||||
'NO_FIELD_OPTIONS',
|
||||
'MYSQL323',
|
||||
'MYSQL40',
|
||||
'ANSI',
|
||||
'NO_AUTO_VALUE_ON_ZERO',
|
||||
'NO_BACKSLASH_ESCAPES',
|
||||
'STRICT_TRANS_TABLES',
|
||||
'STRICT_ALL_TABLES',
|
||||
'NO_ZERO_IN_DATE',
|
||||
'NO_ZERO_DATE',
|
||||
'INVALID_DATES',
|
||||
'ERROR_FOR_DIVISION_BY_ZERO',
|
||||
'TRADITIONAL',
|
||||
'NO_AUTO_CREATE_USER',
|
||||
'HIGH_NOT_PRECEDENCE'
|
||||
) DEFAULT 0 NOT NULL;
|
||||
|
@ -299,6 +299,10 @@ extern CHARSET_INFO *national_charset_info, *table_alias_charset;
|
||||
use strictly more than 64 bits by adding one more define above, you should
|
||||
contact the replication team because the replication code should then be
|
||||
updated (to store more bytes on disk).
|
||||
|
||||
NOTE: When adding new SQL_MODE types, make sure to also add them to
|
||||
../scripts/mysql_create_system_tables.sh and
|
||||
../scripts/mysql_fix_privilege_tables.sql
|
||||
*/
|
||||
|
||||
#define RAID_BLOCK_SIZE 1024
|
||||
|
Reference in New Issue
Block a user