~ubuntu-branches/ubuntu/precise/mysql-5.1/precise

« back to all changes in this revision

Viewing changes to mysql-test/suite/funcs_1/r/myisam_storedproc_08.result

  • Committer: Bazaar Package Importer
  • Author(s): Norbert Tretkowski
  • Date: 2010-03-17 14:56:02 UTC
  • Revision ID: james.westby@ubuntu.com-20100317145602-x7e30l1b2sb5s6w6
Tags: upstream-5.1.45
ImportĀ upstreamĀ versionĀ 5.1.45

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
SET @@session.sql_mode = 'NO_ENGINE_SUBSTITUTION';
 
2
 
 
3
--source suite/funcs_1/storedproc/load_sp_tb.inc
 
4
--------------------------------------------------------------------------------
 
5
 
 
6
--source suite/funcs_1/storedproc/cleanup_sp_tb.inc
 
7
--------------------------------------------------------------------------------
 
8
DROP DATABASE IF EXISTS db_storedproc;
 
9
DROP DATABASE IF EXISTS db_storedproc_1;
 
10
CREATE DATABASE db_storedproc;
 
11
CREATE DATABASE db_storedproc_1;
 
12
USE db_storedproc;
 
13
create table t1(f1 char(20),f2 char(25),f3 date,f4 int,f5 char(25),f6 int)
 
14
engine = <engine_to_be_tested>;
 
15
load data infile '<MYSQLTEST_VARDIR>/std_data/funcs_1/t4.txt' into table t1;
 
16
create table t2(f1 char(20),f2 char(25),f3 date,f4 int,f5 char(25),f6 int)
 
17
engine = <engine_to_be_tested>;
 
18
load data infile '<MYSQLTEST_VARDIR>/std_data/funcs_1/t4.txt' into table t2;
 
19
create table t3(f1 char(20),f2 char(20),f3 integer) engine = <engine_to_be_tested>;
 
20
load data infile '<MYSQLTEST_VARDIR>/std_data/funcs_1/t3.txt' into table t3;
 
21
create table t4(f1 char(20),f2 char(25),f3 date,f4 int,f5 char(25),f6 int)
 
22
engine = <engine_to_be_tested>;
 
23
load data infile '<MYSQLTEST_VARDIR>/std_data/funcs_1/t4.txt' into table t4;
 
24
USE db_storedproc_1;
 
25
create table t6(f1 char(20),f2 char(25),f3 date,f4 int,f5 char(25),f6 int)
 
26
engine = <engine_to_be_tested>;
 
27
load data infile '<MYSQLTEST_VARDIR>/std_data/funcs_1/t4.txt' into table t6;
 
28
USE db_storedproc;
 
29
create table t7 (f1 char(20), f2 char(25), f3 date, f4 int)
 
30
engine = <engine_to_be_tested>;
 
31
load data infile '<MYSQLTEST_VARDIR>/std_data/funcs_1/t7.txt' into table t7;
 
32
Warnings:
 
33
Warning 1265    Data truncated for column 'f3' at row 1
 
34
Warning 1265    Data truncated for column 'f3' at row 2
 
35
Warning 1265    Data truncated for column 'f3' at row 3
 
36
Warning 1265    Data truncated for column 'f3' at row 4
 
37
Warning 1265    Data truncated for column 'f3' at row 5
 
38
Warning 1265    Data truncated for column 'f3' at row 6
 
39
Warning 1265    Data truncated for column 'f3' at row 7
 
40
Warning 1265    Data truncated for column 'f3' at row 8
 
41
Warning 1265    Data truncated for column 'f3' at row 9
 
42
Warning 1265    Data truncated for column 'f3' at row 10
 
43
create table t8 (f1 char(20), f2 char(25), f3 date, f4 int)
 
44
engine = <engine_to_be_tested>;
 
45
load data infile '<MYSQLTEST_VARDIR>/std_data/funcs_1/t7.txt' into table t8;
 
46
Warnings:
 
47
Warning 1265    Data truncated for column 'f3' at row 1
 
48
Warning 1265    Data truncated for column 'f3' at row 2
 
49
Warning 1265    Data truncated for column 'f3' at row 3
 
50
Warning 1265    Data truncated for column 'f3' at row 4
 
51
Warning 1265    Data truncated for column 'f3' at row 5
 
52
Warning 1265    Data truncated for column 'f3' at row 6
 
53
Warning 1265    Data truncated for column 'f3' at row 7
 
54
Warning 1265    Data truncated for column 'f3' at row 8
 
55
Warning 1265    Data truncated for column 'f3' at row 9
 
56
Warning 1265    Data truncated for column 'f3' at row 10
 
57
create table t9(f1 int, f2 char(25), f3 int) engine = <engine_to_be_tested>;
 
58
load data infile '<MYSQLTEST_VARDIR>/std_data/funcs_1/t9.txt' into table t9;
 
59
create table t10(f1 char(20),f2 char(25),f3 date,f4 int,f5 char(25),f6 int)
 
60
engine = <engine_to_be_tested>;
 
61
load data infile '<MYSQLTEST_VARDIR>/std_data/funcs_1/t4.txt' into table t10;
 
62
create table t11(f1 char(20),f2 char(25),f3 date,f4 int,f5 char(25),f6 int)
 
63
engine = <engine_to_be_tested>;
 
64
load data infile '<MYSQLTEST_VARDIR>/std_data/funcs_1/t4.txt' into table t11;
 
65
 
 
66
Section 3.1.8 - SHOW statement checks:
 
67
--------------------------------------------------------------------------------
 
68
 
 
69
Testcase 3.1.8.9:
 
70
-----------------
 
71
 
 
72
Ensure that all stored procedure changes made with ALTER PROCEDURE or ALTER
 
73
FUNCTION are properly recorded and displayed when a SHOW CREATE PROCEDURE or
 
74
SHOW CREATE PROCEDURE STATUS statement, or a SHOW CREATE FUNCTION or SHOW CREATE
 
75
FUNCTION STATUS statement (respectively) is executed.
 
76
--------------------------------------------------------------------------------
 
77
DROP FUNCTION IF EXISTS fn_1;
 
78
DROP FUNCTION IF EXISTS fn_2;
 
79
DROP PROCEDURE IF EXISTS sp_1;
 
80
DROP PROCEDURE IF EXISTS sp_2;
 
81
CREATE PROCEDURE sp_1 (i1 int)
 
82
BEGIN
 
83
set @x=i1;
 
84
END//
 
85
CREATE PROCEDURE sp_2 (i1 int) SQL SECURITY INVOKER COMMENT 'created with INVOKER'
 
86
BEGIN
 
87
set @x=i1;
 
88
END//
 
89
CREATE FUNCTION fn_1 (i1 longtext, i2 mediumint , i3 longblob, i4 year, i5 real) returns year
 
90
BEGIN
 
91
set @x=i1;
 
92
set @y=@x;
 
93
return i4;
 
94
END//
 
95
CREATE FUNCTION fn_2 (i1 longtext, i2 mediumint , i3 longblob, i4 year, i5 real)
 
96
RETURNS YEAR
 
97
SQL SECURITY INVOKER
 
98
COMMENT 'created with INVOKER'
 
99
BEGIN
 
100
set @x=i1;
 
101
set @y=@x;
 
102
return i4;
 
103
END//
 
104
 
 
105
... now check what is stored:
 
106
-----------------------------
 
107
SELECT * FROM information_schema.routines where routine_schema = 'db_storedproc';
 
108
SPECIFIC_NAME   fn_1
 
109
ROUTINE_CATALOG NULL
 
110
ROUTINE_SCHEMA  db_storedproc
 
111
ROUTINE_NAME    fn_1
 
112
ROUTINE_TYPE    FUNCTION
 
113
DTD_IDENTIFIER  year(4)
 
114
ROUTINE_BODY    SQL
 
115
ROUTINE_DEFINITION      BEGIN
 
116
set @x=i1;
 
117
set @y=@x;
 
118
return i4;
 
119
END
 
120
EXTERNAL_NAME   NULL
 
121
EXTERNAL_LANGUAGE       NULL
 
122
PARAMETER_STYLE SQL
 
123
IS_DETERMINISTIC        NO
 
124
SQL_DATA_ACCESS CONTAINS SQL
 
125
SQL_PATH        NULL
 
126
SECURITY_TYPE   DEFINER
 
127
CREATED <modified>
 
128
LAST_ALTERED    <created>
 
129
SQL_MODE        NO_ENGINE_SUBSTITUTION
 
130
ROUTINE_COMMENT 
 
131
DEFINER root@localhost
 
132
CHARACTER_SET_CLIENT    latin1
 
133
COLLATION_CONNECTION    latin1_swedish_ci
 
134
DATABASE_COLLATION      latin1_swedish_ci
 
135
SPECIFIC_NAME   fn_2
 
136
ROUTINE_CATALOG NULL
 
137
ROUTINE_SCHEMA  db_storedproc
 
138
ROUTINE_NAME    fn_2
 
139
ROUTINE_TYPE    FUNCTION
 
140
DTD_IDENTIFIER  year(4)
 
141
ROUTINE_BODY    SQL
 
142
ROUTINE_DEFINITION      BEGIN
 
143
set @x=i1;
 
144
set @y=@x;
 
145
return i4;
 
146
END
 
147
EXTERNAL_NAME   NULL
 
148
EXTERNAL_LANGUAGE       NULL
 
149
PARAMETER_STYLE SQL
 
150
IS_DETERMINISTIC        NO
 
151
SQL_DATA_ACCESS CONTAINS SQL
 
152
SQL_PATH        NULL
 
153
SECURITY_TYPE   INVOKER
 
154
CREATED <modified>
 
155
LAST_ALTERED    <created>
 
156
SQL_MODE        NO_ENGINE_SUBSTITUTION
 
157
ROUTINE_COMMENT created with INVOKER
 
158
DEFINER root@localhost
 
159
CHARACTER_SET_CLIENT    latin1
 
160
COLLATION_CONNECTION    latin1_swedish_ci
 
161
DATABASE_COLLATION      latin1_swedish_ci
 
162
SPECIFIC_NAME   sp_1
 
163
ROUTINE_CATALOG NULL
 
164
ROUTINE_SCHEMA  db_storedproc
 
165
ROUTINE_NAME    sp_1
 
166
ROUTINE_TYPE    PROCEDURE
 
167
DTD_IDENTIFIER  NULL
 
168
ROUTINE_BODY    SQL
 
169
ROUTINE_DEFINITION      BEGIN
 
170
set @x=i1;
 
171
END
 
172
EXTERNAL_NAME   NULL
 
173
EXTERNAL_LANGUAGE       NULL
 
174
PARAMETER_STYLE SQL
 
175
IS_DETERMINISTIC        NO
 
176
SQL_DATA_ACCESS CONTAINS SQL
 
177
SQL_PATH        NULL
 
178
SECURITY_TYPE   DEFINER
 
179
CREATED <modified>
 
180
LAST_ALTERED    <created>
 
181
SQL_MODE        NO_ENGINE_SUBSTITUTION
 
182
ROUTINE_COMMENT 
 
183
DEFINER root@localhost
 
184
CHARACTER_SET_CLIENT    latin1
 
185
COLLATION_CONNECTION    latin1_swedish_ci
 
186
DATABASE_COLLATION      latin1_swedish_ci
 
187
SPECIFIC_NAME   sp_2
 
188
ROUTINE_CATALOG NULL
 
189
ROUTINE_SCHEMA  db_storedproc
 
190
ROUTINE_NAME    sp_2
 
191
ROUTINE_TYPE    PROCEDURE
 
192
DTD_IDENTIFIER  NULL
 
193
ROUTINE_BODY    SQL
 
194
ROUTINE_DEFINITION      BEGIN
 
195
set @x=i1;
 
196
END
 
197
EXTERNAL_NAME   NULL
 
198
EXTERNAL_LANGUAGE       NULL
 
199
PARAMETER_STYLE SQL
 
200
IS_DETERMINISTIC        NO
 
201
SQL_DATA_ACCESS CONTAINS SQL
 
202
SQL_PATH        NULL
 
203
SECURITY_TYPE   INVOKER
 
204
CREATED <modified>
 
205
LAST_ALTERED    <created>
 
206
SQL_MODE        NO_ENGINE_SUBSTITUTION
 
207
ROUTINE_COMMENT created with INVOKER
 
208
DEFINER root@localhost
 
209
CHARACTER_SET_CLIENT    latin1
 
210
COLLATION_CONNECTION    latin1_swedish_ci
 
211
DATABASE_COLLATION      latin1_swedish_ci
 
212
SHOW CREATE FUNCTION  fn_1;
 
213
Function        fn_1
 
214
sql_mode        NO_ENGINE_SUBSTITUTION
 
215
Create Function CREATE DEFINER=`root`@`localhost` FUNCTION `fn_1`(i1 longtext, i2 mediumint , i3 longblob, i4 year, i5 real) RETURNS year(4)
 
216
BEGIN
 
217
set @x=i1;
 
218
set @y=@x;
 
219
return i4;
 
220
END
 
221
character_set_client    latin1
 
222
collation_connection    latin1_swedish_ci
 
223
Database Collation      latin1_swedish_ci
 
224
SHOW CREATE FUNCTION  fn_2;
 
225
Function        fn_2
 
226
sql_mode        NO_ENGINE_SUBSTITUTION
 
227
Create Function CREATE DEFINER=`root`@`localhost` FUNCTION `fn_2`(i1 longtext, i2 mediumint , i3 longblob, i4 year, i5 real) RETURNS year(4)
 
228
    SQL SECURITY INVOKER
 
229
    COMMENT 'created with INVOKER'
 
230
BEGIN
 
231
set @x=i1;
 
232
set @y=@x;
 
233
return i4;
 
234
END
 
235
character_set_client    latin1
 
236
collation_connection    latin1_swedish_ci
 
237
Database Collation      latin1_swedish_ci
 
238
SHOW CREATE PROCEDURE sp_1;
 
239
Procedure       sp_1
 
240
sql_mode        NO_ENGINE_SUBSTITUTION
 
241
Create Procedure        CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_1`(i1 int)
 
242
BEGIN
 
243
set @x=i1;
 
244
END
 
245
character_set_client    latin1
 
246
collation_connection    latin1_swedish_ci
 
247
Database Collation      latin1_swedish_ci
 
248
SHOW CREATE PROCEDURE sp_2;
 
249
Procedure       sp_2
 
250
sql_mode        NO_ENGINE_SUBSTITUTION
 
251
Create Procedure        CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_2`(i1 int)
 
252
    SQL SECURITY INVOKER
 
253
    COMMENT 'created with INVOKER'
 
254
BEGIN
 
255
set @x=i1;
 
256
END
 
257
character_set_client    latin1
 
258
collation_connection    latin1_swedish_ci
 
259
Database Collation      latin1_swedish_ci
 
260
SHOW FUNCTION STATUS LIKE 'fn_%';
 
261
Db      db_storedproc
 
262
Name    fn_1
 
263
Type    FUNCTION
 
264
Definer root@localhost
 
265
Modified        <modified>
 
266
Created <created>
 
267
Security_type   DEFINER
 
268
Comment 
 
269
character_set_client    latin1
 
270
collation_connection    latin1_swedish_ci
 
271
Database Collation      latin1_swedish_ci
 
272
Db      db_storedproc
 
273
Name    fn_2
 
274
Type    FUNCTION
 
275
Definer root@localhost
 
276
Modified        <modified>
 
277
Created <created>
 
278
Security_type   INVOKER
 
279
Comment created with INVOKER
 
280
character_set_client    latin1
 
281
collation_connection    latin1_swedish_ci
 
282
Database Collation      latin1_swedish_ci
 
283
SHOW PROCEDURE STATUS LIKE 'sp_%';
 
284
Db      db_storedproc
 
285
Name    sp_1
 
286
Type    PROCEDURE
 
287
Definer root@localhost
 
288
Modified        <modified>
 
289
Created <created>
 
290
Security_type   DEFINER
 
291
Comment 
 
292
character_set_client    latin1
 
293
collation_connection    latin1_swedish_ci
 
294
Database Collation      latin1_swedish_ci
 
295
Db      db_storedproc
 
296
Name    sp_2
 
297
Type    PROCEDURE
 
298
Definer root@localhost
 
299
Modified        <modified>
 
300
Created <created>
 
301
Security_type   INVOKER
 
302
Comment created with INVOKER
 
303
character_set_client    latin1
 
304
collation_connection    latin1_swedish_ci
 
305
Database Collation      latin1_swedish_ci
 
306
 
 
307
... now change some stuff:
 
308
--------------------------
 
309
ALTER PROCEDURE sp_1 SQL SECURITY INVOKER;
 
310
ALTER PROCEDURE sp_1 COMMENT 'new comment, SP changed to INVOKER';
 
311
ALTER PROCEDURE sp_2 SQL SECURITY DEFINER;
 
312
ALTER PROCEDURE sp_2 DROP COMMENT;
 
313
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DROP COMMENT' at line 1
 
314
ALTER PROCEDURE sp_2 COMMENT 'SP changed to DEFINER';
 
315
ALTER PROCEDURE sp_2 READS SQL DATA;
 
316
ALTER FUNCTION  fn_1 SQL SECURITY INVOKER;
 
317
ALTER FUNCTION  fn_1 COMMENT 'new comment, FN changed to INVOKER';
 
318
ALTER FUNCTION  fn_1 NO SQL;
 
319
ALTER FUNCTION  fn_2 SQL SECURITY DEFINER;
 
320
ALTER FUNCTION  fn_2 COMMENT 'FN changed to DEFINER';
 
321
ALTER FUNCTION  fn_2 MODIFIES SQL DATA;
 
322
 
 
323
... now check what is stored:
 
324
-----------------------------
 
325
SELECT * FROM information_schema.routines where routine_schema = 'db_storedproc';
 
326
SPECIFIC_NAME   fn_1
 
327
ROUTINE_CATALOG NULL
 
328
ROUTINE_SCHEMA  db_storedproc
 
329
ROUTINE_NAME    fn_1
 
330
ROUTINE_TYPE    FUNCTION
 
331
DTD_IDENTIFIER  year(4)
 
332
ROUTINE_BODY    SQL
 
333
ROUTINE_DEFINITION      BEGIN
 
334
set @x=i1;
 
335
set @y=@x;
 
336
return i4;
 
337
END
 
338
EXTERNAL_NAME   NULL
 
339
EXTERNAL_LANGUAGE       NULL
 
340
PARAMETER_STYLE SQL
 
341
IS_DETERMINISTIC        NO
 
342
SQL_DATA_ACCESS NO SQL
 
343
SQL_PATH        NULL
 
344
SECURITY_TYPE   INVOKER
 
345
CREATED <modified>
 
346
LAST_ALTERED    <created>
 
347
SQL_MODE        NO_ENGINE_SUBSTITUTION
 
348
ROUTINE_COMMENT new comment, FN changed to INVOKER
 
349
DEFINER root@localhost
 
350
CHARACTER_SET_CLIENT    latin1
 
351
COLLATION_CONNECTION    latin1_swedish_ci
 
352
DATABASE_COLLATION      latin1_swedish_ci
 
353
SPECIFIC_NAME   fn_2
 
354
ROUTINE_CATALOG NULL
 
355
ROUTINE_SCHEMA  db_storedproc
 
356
ROUTINE_NAME    fn_2
 
357
ROUTINE_TYPE    FUNCTION
 
358
DTD_IDENTIFIER  year(4)
 
359
ROUTINE_BODY    SQL
 
360
ROUTINE_DEFINITION      BEGIN
 
361
set @x=i1;
 
362
set @y=@x;
 
363
return i4;
 
364
END
 
365
EXTERNAL_NAME   NULL
 
366
EXTERNAL_LANGUAGE       NULL
 
367
PARAMETER_STYLE SQL
 
368
IS_DETERMINISTIC        NO
 
369
SQL_DATA_ACCESS MODIFIES SQL DATA
 
370
SQL_PATH        NULL
 
371
SECURITY_TYPE   DEFINER
 
372
CREATED <modified>
 
373
LAST_ALTERED    <created>
 
374
SQL_MODE        NO_ENGINE_SUBSTITUTION
 
375
ROUTINE_COMMENT FN changed to DEFINER
 
376
DEFINER root@localhost
 
377
CHARACTER_SET_CLIENT    latin1
 
378
COLLATION_CONNECTION    latin1_swedish_ci
 
379
DATABASE_COLLATION      latin1_swedish_ci
 
380
SPECIFIC_NAME   sp_1
 
381
ROUTINE_CATALOG NULL
 
382
ROUTINE_SCHEMA  db_storedproc
 
383
ROUTINE_NAME    sp_1
 
384
ROUTINE_TYPE    PROCEDURE
 
385
DTD_IDENTIFIER  NULL
 
386
ROUTINE_BODY    SQL
 
387
ROUTINE_DEFINITION      BEGIN
 
388
set @x=i1;
 
389
END
 
390
EXTERNAL_NAME   NULL
 
391
EXTERNAL_LANGUAGE       NULL
 
392
PARAMETER_STYLE SQL
 
393
IS_DETERMINISTIC        NO
 
394
SQL_DATA_ACCESS CONTAINS SQL
 
395
SQL_PATH        NULL
 
396
SECURITY_TYPE   INVOKER
 
397
CREATED <modified>
 
398
LAST_ALTERED    <created>
 
399
SQL_MODE        NO_ENGINE_SUBSTITUTION
 
400
ROUTINE_COMMENT new comment, SP changed to INVOKER
 
401
DEFINER root@localhost
 
402
CHARACTER_SET_CLIENT    latin1
 
403
COLLATION_CONNECTION    latin1_swedish_ci
 
404
DATABASE_COLLATION      latin1_swedish_ci
 
405
SPECIFIC_NAME   sp_2
 
406
ROUTINE_CATALOG NULL
 
407
ROUTINE_SCHEMA  db_storedproc
 
408
ROUTINE_NAME    sp_2
 
409
ROUTINE_TYPE    PROCEDURE
 
410
DTD_IDENTIFIER  NULL
 
411
ROUTINE_BODY    SQL
 
412
ROUTINE_DEFINITION      BEGIN
 
413
set @x=i1;
 
414
END
 
415
EXTERNAL_NAME   NULL
 
416
EXTERNAL_LANGUAGE       NULL
 
417
PARAMETER_STYLE SQL
 
418
IS_DETERMINISTIC        NO
 
419
SQL_DATA_ACCESS READS SQL DATA
 
420
SQL_PATH        NULL
 
421
SECURITY_TYPE   DEFINER
 
422
CREATED <modified>
 
423
LAST_ALTERED    <created>
 
424
SQL_MODE        NO_ENGINE_SUBSTITUTION
 
425
ROUTINE_COMMENT SP changed to DEFINER
 
426
DEFINER root@localhost
 
427
CHARACTER_SET_CLIENT    latin1
 
428
COLLATION_CONNECTION    latin1_swedish_ci
 
429
DATABASE_COLLATION      latin1_swedish_ci
 
430
SHOW CREATE FUNCTION  fn_1;
 
431
Function        fn_1
 
432
sql_mode        NO_ENGINE_SUBSTITUTION
 
433
Create Function CREATE DEFINER=`root`@`localhost` FUNCTION `fn_1`(i1 longtext, i2 mediumint , i3 longblob, i4 year, i5 real) RETURNS year(4)
 
434
    NO SQL
 
435
    SQL SECURITY INVOKER
 
436
    COMMENT 'new comment, FN changed to INVOKER'
 
437
BEGIN
 
438
set @x=i1;
 
439
set @y=@x;
 
440
return i4;
 
441
END
 
442
character_set_client    latin1
 
443
collation_connection    latin1_swedish_ci
 
444
Database Collation      latin1_swedish_ci
 
445
SHOW CREATE FUNCTION  fn_2;
 
446
Function        fn_2
 
447
sql_mode        NO_ENGINE_SUBSTITUTION
 
448
Create Function CREATE DEFINER=`root`@`localhost` FUNCTION `fn_2`(i1 longtext, i2 mediumint , i3 longblob, i4 year, i5 real) RETURNS year(4)
 
449
    MODIFIES SQL DATA
 
450
    COMMENT 'FN changed to DEFINER'
 
451
BEGIN
 
452
set @x=i1;
 
453
set @y=@x;
 
454
return i4;
 
455
END
 
456
character_set_client    latin1
 
457
collation_connection    latin1_swedish_ci
 
458
Database Collation      latin1_swedish_ci
 
459
SHOW CREATE PROCEDURE sp_1;
 
460
Procedure       sp_1
 
461
sql_mode        NO_ENGINE_SUBSTITUTION
 
462
Create Procedure        CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_1`(i1 int)
 
463
    SQL SECURITY INVOKER
 
464
    COMMENT 'new comment, SP changed to INVOKER'
 
465
BEGIN
 
466
set @x=i1;
 
467
END
 
468
character_set_client    latin1
 
469
collation_connection    latin1_swedish_ci
 
470
Database Collation      latin1_swedish_ci
 
471
SHOW CREATE PROCEDURE sp_2;
 
472
Procedure       sp_2
 
473
sql_mode        NO_ENGINE_SUBSTITUTION
 
474
Create Procedure        CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_2`(i1 int)
 
475
    READS SQL DATA
 
476
    COMMENT 'SP changed to DEFINER'
 
477
BEGIN
 
478
set @x=i1;
 
479
END
 
480
character_set_client    latin1
 
481
collation_connection    latin1_swedish_ci
 
482
Database Collation      latin1_swedish_ci
 
483
SHOW FUNCTION STATUS LIKE 'fn_%';
 
484
Db      db_storedproc
 
485
Name    fn_1
 
486
Type    FUNCTION
 
487
Definer root@localhost
 
488
Modified        <modified>
 
489
Created <created>
 
490
Security_type   INVOKER
 
491
Comment new comment, FN changed to INVOKER
 
492
character_set_client    latin1
 
493
collation_connection    latin1_swedish_ci
 
494
Database Collation      latin1_swedish_ci
 
495
Db      db_storedproc
 
496
Name    fn_2
 
497
Type    FUNCTION
 
498
Definer root@localhost
 
499
Modified        <modified>
 
500
Created <created>
 
501
Security_type   DEFINER
 
502
Comment FN changed to DEFINER
 
503
character_set_client    latin1
 
504
collation_connection    latin1_swedish_ci
 
505
Database Collation      latin1_swedish_ci
 
506
SHOW PROCEDURE STATUS LIKE 'sp_%';
 
507
Db      db_storedproc
 
508
Name    sp_1
 
509
Type    PROCEDURE
 
510
Definer root@localhost
 
511
Modified        <modified>
 
512
Created <created>
 
513
Security_type   INVOKER
 
514
Comment new comment, SP changed to INVOKER
 
515
character_set_client    latin1
 
516
collation_connection    latin1_swedish_ci
 
517
Database Collation      latin1_swedish_ci
 
518
Db      db_storedproc
 
519
Name    sp_2
 
520
Type    PROCEDURE
 
521
Definer root@localhost
 
522
Modified        <modified>
 
523
Created <created>
 
524
Security_type   DEFINER
 
525
Comment SP changed to DEFINER
 
526
character_set_client    latin1
 
527
collation_connection    latin1_swedish_ci
 
528
Database Collation      latin1_swedish_ci
 
529
 
 
530
... change back to default and check result:
 
531
--------------------------------------------
 
532
ALTER FUNCTION  fn_2 CONTAINS SQL;
 
533
 
 
534
... now check what is stored:
 
535
-----------------------------
 
536
SELECT * FROM information_schema.routines where routine_schema = 'db_storedproc';
 
537
SPECIFIC_NAME   fn_1
 
538
ROUTINE_CATALOG NULL
 
539
ROUTINE_SCHEMA  db_storedproc
 
540
ROUTINE_NAME    fn_1
 
541
ROUTINE_TYPE    FUNCTION
 
542
DTD_IDENTIFIER  year(4)
 
543
ROUTINE_BODY    SQL
 
544
ROUTINE_DEFINITION      BEGIN
 
545
set @x=i1;
 
546
set @y=@x;
 
547
return i4;
 
548
END
 
549
EXTERNAL_NAME   NULL
 
550
EXTERNAL_LANGUAGE       NULL
 
551
PARAMETER_STYLE SQL
 
552
IS_DETERMINISTIC        NO
 
553
SQL_DATA_ACCESS NO SQL
 
554
SQL_PATH        NULL
 
555
SECURITY_TYPE   INVOKER
 
556
CREATED <modified>
 
557
LAST_ALTERED    <created>
 
558
SQL_MODE        NO_ENGINE_SUBSTITUTION
 
559
ROUTINE_COMMENT new comment, FN changed to INVOKER
 
560
DEFINER root@localhost
 
561
CHARACTER_SET_CLIENT    latin1
 
562
COLLATION_CONNECTION    latin1_swedish_ci
 
563
DATABASE_COLLATION      latin1_swedish_ci
 
564
SPECIFIC_NAME   fn_2
 
565
ROUTINE_CATALOG NULL
 
566
ROUTINE_SCHEMA  db_storedproc
 
567
ROUTINE_NAME    fn_2
 
568
ROUTINE_TYPE    FUNCTION
 
569
DTD_IDENTIFIER  year(4)
 
570
ROUTINE_BODY    SQL
 
571
ROUTINE_DEFINITION      BEGIN
 
572
set @x=i1;
 
573
set @y=@x;
 
574
return i4;
 
575
END
 
576
EXTERNAL_NAME   NULL
 
577
EXTERNAL_LANGUAGE       NULL
 
578
PARAMETER_STYLE SQL
 
579
IS_DETERMINISTIC        NO
 
580
SQL_DATA_ACCESS CONTAINS SQL
 
581
SQL_PATH        NULL
 
582
SECURITY_TYPE   DEFINER
 
583
CREATED <modified>
 
584
LAST_ALTERED    <created>
 
585
SQL_MODE        NO_ENGINE_SUBSTITUTION
 
586
ROUTINE_COMMENT FN changed to DEFINER
 
587
DEFINER root@localhost
 
588
CHARACTER_SET_CLIENT    latin1
 
589
COLLATION_CONNECTION    latin1_swedish_ci
 
590
DATABASE_COLLATION      latin1_swedish_ci
 
591
SPECIFIC_NAME   sp_1
 
592
ROUTINE_CATALOG NULL
 
593
ROUTINE_SCHEMA  db_storedproc
 
594
ROUTINE_NAME    sp_1
 
595
ROUTINE_TYPE    PROCEDURE
 
596
DTD_IDENTIFIER  NULL
 
597
ROUTINE_BODY    SQL
 
598
ROUTINE_DEFINITION      BEGIN
 
599
set @x=i1;
 
600
END
 
601
EXTERNAL_NAME   NULL
 
602
EXTERNAL_LANGUAGE       NULL
 
603
PARAMETER_STYLE SQL
 
604
IS_DETERMINISTIC        NO
 
605
SQL_DATA_ACCESS CONTAINS SQL
 
606
SQL_PATH        NULL
 
607
SECURITY_TYPE   INVOKER
 
608
CREATED <modified>
 
609
LAST_ALTERED    <created>
 
610
SQL_MODE        NO_ENGINE_SUBSTITUTION
 
611
ROUTINE_COMMENT new comment, SP changed to INVOKER
 
612
DEFINER root@localhost
 
613
CHARACTER_SET_CLIENT    latin1
 
614
COLLATION_CONNECTION    latin1_swedish_ci
 
615
DATABASE_COLLATION      latin1_swedish_ci
 
616
SPECIFIC_NAME   sp_2
 
617
ROUTINE_CATALOG NULL
 
618
ROUTINE_SCHEMA  db_storedproc
 
619
ROUTINE_NAME    sp_2
 
620
ROUTINE_TYPE    PROCEDURE
 
621
DTD_IDENTIFIER  NULL
 
622
ROUTINE_BODY    SQL
 
623
ROUTINE_DEFINITION      BEGIN
 
624
set @x=i1;
 
625
END
 
626
EXTERNAL_NAME   NULL
 
627
EXTERNAL_LANGUAGE       NULL
 
628
PARAMETER_STYLE SQL
 
629
IS_DETERMINISTIC        NO
 
630
SQL_DATA_ACCESS READS SQL DATA
 
631
SQL_PATH        NULL
 
632
SECURITY_TYPE   DEFINER
 
633
CREATED <modified>
 
634
LAST_ALTERED    <created>
 
635
SQL_MODE        NO_ENGINE_SUBSTITUTION
 
636
ROUTINE_COMMENT SP changed to DEFINER
 
637
DEFINER root@localhost
 
638
CHARACTER_SET_CLIENT    latin1
 
639
COLLATION_CONNECTION    latin1_swedish_ci
 
640
DATABASE_COLLATION      latin1_swedish_ci
 
641
SHOW CREATE FUNCTION  fn_1;
 
642
Function        fn_1
 
643
sql_mode        NO_ENGINE_SUBSTITUTION
 
644
Create Function CREATE DEFINER=`root`@`localhost` FUNCTION `fn_1`(i1 longtext, i2 mediumint , i3 longblob, i4 year, i5 real) RETURNS year(4)
 
645
    NO SQL
 
646
    SQL SECURITY INVOKER
 
647
    COMMENT 'new comment, FN changed to INVOKER'
 
648
BEGIN
 
649
set @x=i1;
 
650
set @y=@x;
 
651
return i4;
 
652
END
 
653
character_set_client    latin1
 
654
collation_connection    latin1_swedish_ci
 
655
Database Collation      latin1_swedish_ci
 
656
SHOW CREATE FUNCTION  fn_2;
 
657
Function        fn_2
 
658
sql_mode        NO_ENGINE_SUBSTITUTION
 
659
Create Function CREATE DEFINER=`root`@`localhost` FUNCTION `fn_2`(i1 longtext, i2 mediumint , i3 longblob, i4 year, i5 real) RETURNS year(4)
 
660
    COMMENT 'FN changed to DEFINER'
 
661
BEGIN
 
662
set @x=i1;
 
663
set @y=@x;
 
664
return i4;
 
665
END
 
666
character_set_client    latin1
 
667
collation_connection    latin1_swedish_ci
 
668
Database Collation      latin1_swedish_ci
 
669
SHOW CREATE PROCEDURE sp_1;
 
670
Procedure       sp_1
 
671
sql_mode        NO_ENGINE_SUBSTITUTION
 
672
Create Procedure        CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_1`(i1 int)
 
673
    SQL SECURITY INVOKER
 
674
    COMMENT 'new comment, SP changed to INVOKER'
 
675
BEGIN
 
676
set @x=i1;
 
677
END
 
678
character_set_client    latin1
 
679
collation_connection    latin1_swedish_ci
 
680
Database Collation      latin1_swedish_ci
 
681
SHOW CREATE PROCEDURE sp_2;
 
682
Procedure       sp_2
 
683
sql_mode        NO_ENGINE_SUBSTITUTION
 
684
Create Procedure        CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_2`(i1 int)
 
685
    READS SQL DATA
 
686
    COMMENT 'SP changed to DEFINER'
 
687
BEGIN
 
688
set @x=i1;
 
689
END
 
690
character_set_client    latin1
 
691
collation_connection    latin1_swedish_ci
 
692
Database Collation      latin1_swedish_ci
 
693
SHOW FUNCTION STATUS LIKE 'fn_%';
 
694
Db      db_storedproc
 
695
Name    fn_1
 
696
Type    FUNCTION
 
697
Definer root@localhost
 
698
Modified        <modified>
 
699
Created <created>
 
700
Security_type   INVOKER
 
701
Comment new comment, FN changed to INVOKER
 
702
character_set_client    latin1
 
703
collation_connection    latin1_swedish_ci
 
704
Database Collation      latin1_swedish_ci
 
705
Db      db_storedproc
 
706
Name    fn_2
 
707
Type    FUNCTION
 
708
Definer root@localhost
 
709
Modified        <modified>
 
710
Created <created>
 
711
Security_type   DEFINER
 
712
Comment FN changed to DEFINER
 
713
character_set_client    latin1
 
714
collation_connection    latin1_swedish_ci
 
715
Database Collation      latin1_swedish_ci
 
716
SHOW PROCEDURE STATUS LIKE 'sp_%';
 
717
Db      db_storedproc
 
718
Name    sp_1
 
719
Type    PROCEDURE
 
720
Definer root@localhost
 
721
Modified        <modified>
 
722
Created <created>
 
723
Security_type   INVOKER
 
724
Comment new comment, SP changed to INVOKER
 
725
character_set_client    latin1
 
726
collation_connection    latin1_swedish_ci
 
727
Database Collation      latin1_swedish_ci
 
728
Db      db_storedproc
 
729
Name    sp_2
 
730
Type    PROCEDURE
 
731
Definer root@localhost
 
732
Modified        <modified>
 
733
Created <created>
 
734
Security_type   DEFINER
 
735
Comment SP changed to DEFINER
 
736
character_set_client    latin1
 
737
collation_connection    latin1_swedish_ci
 
738
Database Collation      latin1_swedish_ci
 
739
 
 
740
... cleanup
 
741
-----------
 
742
DROP FUNCTION fn_1;
 
743
DROP FUNCTION fn_2;
 
744
DROP PROCEDURE sp_1;
 
745
 
 
746
--source suite/funcs_1/storedproc/cleanup_sp_tb.inc
 
747
--------------------------------------------------------------------------------
 
748
DROP DATABASE IF EXISTS db_storedproc;
 
749
DROP DATABASE IF EXISTS db_storedproc_1;
 
750
 
 
751
.                               +++ END OF SCRIPT +++
 
752
--------------------------------------------------------------------------------