2019-04-10 10:55:49 +02:00
show create procedure mysql.AddGeometryColumn;
Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
2020-02-19 17:50:30 +01:00
AddGeometryColumn CREATE DEFINER=`mariadb.sys`@`localhost` PROCEDURE `AddGeometryColumn`(catalog varchar(64), t_schema varchar(64),
2019-04-10 10:55:49 +02:00
t_name varchar(64), geometry_column varchar(64), t_srid int)
SQL SECURITY INVOKER
begin
2024-05-28 07:08:51 +02:00
set @qwe= concat('ALTER TABLE ', t_schema, '.', t_name, ' ADD ', geometry_column,' GEOMETRY REF_SYSTEM_ID=', t_srid); PREPARE ls from @qwe; execute ls; deallocate prepare ls; end latin1 latin1_swedish_ci utf8mb4_uca1400_ai_ci
2019-04-10 10:55:49 +02:00
show create procedure mysql.DropGeometryColumn;
Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
2020-02-19 17:50:30 +01:00
DropGeometryColumn CREATE DEFINER=`mariadb.sys`@`localhost` PROCEDURE `DropGeometryColumn`(catalog varchar(64), t_schema varchar(64),
2019-04-10 10:55:49 +02:00
t_name varchar(64), geometry_column varchar(64))
SQL SECURITY INVOKER
begin
2024-05-28 07:08:51 +02:00
set @qwe= concat('ALTER TABLE ', t_schema, '.', t_name, ' DROP ', geometry_column); PREPARE ls from @qwe; execute ls; deallocate prepare ls; end latin1 latin1_swedish_ci utf8mb4_uca1400_ai_ci
2019-04-10 10:55:49 +02:00
create table t1 (a int, b int);
call mysql.AddGeometryColumn('', 'test', 't1', 'c', 10);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL,
`b` int(11) DEFAULT NULL,
`c` geometry DEFAULT NULL
2024-05-28 07:08:51 +02:00
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci
2019-04-10 10:55:49 +02:00
call mysql.DropGeometryColumn('', 'test', 't1', 'c');
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL,
`b` int(11) DEFAULT NULL
2024-05-28 07:08:51 +02:00
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci
2019-04-10 10:55:49 +02:00
call mysql.DropGeometryColumn('', 'test', 't1', 'b');
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
2024-05-28 07:08:51 +02:00
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci
2019-04-10 10:55:49 +02:00
drop table t1;
create user foo@localhost;
grant execute on mysql.* to foo@localhost;
2019-05-04 17:04:55 +02:00
connect foo, localhost, foo;
2019-04-10 10:55:49 +02:00
call mysql.AddGeometryColumn('', 'mysql', 'proc', 'c', 10);
2022-07-16 14:39:17 +02:00
ERROR 42000: ALTER command denied to user 'foo'@'localhost' for table `mysql`.`proc`
2019-05-04 17:04:55 +02:00
disconnect foo;
connection default;
2019-04-10 10:55:49 +02:00
drop user foo@localhost;