blob: c69d7b004be1f001a6bb81c3e42fcfe88b3bcb62 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
|
############## suite/funcs_1/datadict/datadict_priv.inc ################
# #
# DDL and DML operations on information_schema tables #
# #
# Creation: #
# 2007-08 hhunger Implement this test as part of #
# WL#3982 Test information_schema.processlist #
# #
# Last update: #
# 2007-08-14 mleich Some cleanup #
# #
########################################################################
# These variables have to be set before sourcing this file.
#
# information_schema table to be tested
# let $table= processlist;
#
# columns of the information_schema table e.g. to use in a select.
# let $columns= ID, USER, HOST, DB, COMMAND, TIME, STATE, INFO, PROGRESS;
#
# Where clause for an update.
# let $update_where= WHERE id=1 ;
#
# Column to be used in the SET of an update.
# let $set_column= user='any_user' ;
#
# Where clause of a delete.
# let $delete_where= WHERE id=1 ;
#
# Column to be dropped.
# let $drop_column= user;
#
# Column to be indexed
# let $index_col= user;
# data access
eval CREATE TEMPORARY TABLE test.t_$table AS SELECT * FROM $table;
eval UPDATE test.t_$table SET user='horst' $update_where ;
--error ER_DBACCESS_DENIED_ERROR
eval INSERT INTO $table SELECT * FROM test.t_$table;
# bug#30208: CREATE TABLE ...LIKE does not accept dbname.tablename:unknown database
eval DROP TABLE test.t_$table;
--error ER_VIEW_NONUPD_CHECK
eval CREATE VIEW test.v_$table ($columns) AS SELECT $columns FROM $table WITH CHECK OPTION;
eval CREATE VIEW test.v_$table ($columns) AS SELECT $columns FROM $table;
# !!! This query returns a wrong error due to a bug in the code of mwl106
# !!! Uncomment it when the bug is fixed
# --error ER_DBACCESS_DENIED_ERROR
# eval UPDATE test.v_$TABLE SET TIME=NOW() WHERE id = 1;
eval DROP VIEW test.v_$table;
--error ER_DBACCESS_DENIED_ERROR
eval UPDATE $table SET $set_column $update_where;
--error ER_DBACCESS_DENIED_ERROR
eval DELETE FROM $table $delete_where;
# change privileges
--error ER_DBACCESS_DENIED_ERROR
eval REVOKE ALL ON $table FROM current_user;
--error ER_DBACCESS_DENIED_ERROR
eval GRANT INSERT,UPDATE ON $table TO current_user;
SHOW GRANTS;
#----------------------------------------------------------------------
# table access
--error ER_DBACCESS_DENIED_ERROR
eval CREATE INDEX i_$table ON $table ($index_col);
--error ER_DBACCESS_DENIED_ERROR
eval DROP TABLE $table;
--error ER_DBACCESS_DENIED_ERROR
eval ALTER TABLE $table DROP COLUMN $drop_column;
--error ER_DBACCESS_DENIED_ERROR
eval ALTER TABLE $table ADD COLUMN (my_column INT);
--error ER_DBACCESS_DENIED_ERROR
eval RENAME TABLE $table TO new_$table;
--error ER_DBACCESS_DENIED_ERROR
eval RENAME TABLE $table TO files;
--error ER_DBACCESS_DENIED_ERROR
eval CREATE TABLE new_$table AS SELECT * FROM $table;
#----------------------------------------------------------------------
# database access
--error ER_DBACCESS_DENIED_ERROR
DROP DATABASE information_schema;
--error ER_PARSE_ERROR
RENAME DATABASE information_schema TO info_schema;
--error ER_DBACCESS_DENIED_ERROR
ALTER DATABASE information_schema UPGRADE DATA DIRECTORY NAME;
|