1
0
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:
jimw@mysql.com
2005-03-08 17:40:43 -08:00
parent b2c4d73997
commit 2b2efa4208
5 changed files with 81 additions and 3 deletions

View File

@ -11,3 +11,4 @@ show create table func;
show create table tables_priv; show create table tables_priv;
show create table columns_priv; show create table columns_priv;
show create table procs_priv; show create table procs_priv;
show create table proc;

View File

@ -154,5 +154,26 @@ procs_priv CREATE TABLE `procs_priv` (
PRIMARY KEY (`Host`,`Db`,`User`,`Routine_name`), PRIMARY KEY (`Host`,`Db`,`User`,`Routine_name`),
KEY `Grantor` (`Grantor`) KEY `Grantor` (`Grantor`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Procedure privileges' ) 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; show tables;
Tables_in_test Tables_in_test

View File

@ -702,7 +702,17 @@ then
c_p="$c_p 'MYSQL323'," c_p="$c_p 'MYSQL323',"
c_p="$c_p 'MYSQL40'," c_p="$c_p 'MYSQL40',"
c_p="$c_p 'ANSI'," 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 ) DEFAULT 0 NOT NULL,"
c_p="$c_p comment char(64) binary DEFAULT '' NOT NULL," c_p="$c_p comment char(64) binary DEFAULT '' NOT NULL,"
c_p="$c_p PRIMARY KEY (db,name,type)" c_p="$c_p PRIMARY KEY (db,name,type)"

View File

@ -422,7 +422,17 @@ CREATE TABLE IF NOT EXISTS proc (
'MYSQL323', 'MYSQL323',
'MYSQL40', 'MYSQL40',
'ANSI', '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, ) DEFAULT 0 NOT NULL,
comment char(64) binary DEFAULT '' NOT NULL, comment char(64) binary DEFAULT '' NOT NULL,
PRIMARY KEY (db,name,type) PRIMARY KEY (db,name,type)
@ -436,4 +446,36 @@ ALTER TABLE proc MODIFY name char(64) DEFAULT '' NOT NULL,
'NO_SQL', 'NO_SQL',
'READS_SQL_DATA', 'READS_SQL_DATA',
'MODIFIES_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;

View File

@ -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 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 contact the replication team because the replication code should then be
updated (to store more bytes on disk). 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 #define RAID_BLOCK_SIZE 1024