mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-10596 Allow VARCHAR and VARCHAR2 without length as a data type of routine parameters and in RETURN clause
This commit is contained in:
132
mysql-test/suite/compat/oracle/r/sp-param.result
Normal file
132
mysql-test/suite/compat/oracle/r/sp-param.result
Normal file
@ -0,0 +1,132 @@
|
||||
SET sql_mode=ORACLE;
|
||||
#
|
||||
# MDEV-10596 Allow VARCHAR and VARCHAR2 without length as a data type of routine parameters and in RETURN clause
|
||||
#
|
||||
CREATE FUNCTION f1(param CHAR) RETURN CHAR AS BEGIN RETURN param; END;;
|
||||
SHOW CREATE FUNCTION f1;
|
||||
Function sql_mode Create Function character_set_client collation_connection Database Collation
|
||||
f1 PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ORACLE,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_FIELD_OPTIONS,NO_AUTO_CREATE_USER CREATE DEFINER="root"@"localhost" FUNCTION "f1"(param CHAR) RETURN varchar(2000) CHARSET latin1
|
||||
AS BEGIN RETURN param; END latin1 latin1_swedish_ci latin1_swedish_ci
|
||||
SELECT LENGTH(f1(REPEAT('a',2000)));;
|
||||
LENGTH(f1(REPEAT('a',2000)))
|
||||
2000
|
||||
CREATE TABLE t1 AS SELECT f1(REPEAT('a',2000)) AS a;;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE "t1" (
|
||||
"a" text DEFAULT NULL
|
||||
)
|
||||
DROP TABLE t1;
|
||||
DROP FUNCTION f1;
|
||||
CREATE FUNCTION f1(param NCHAR) RETURN NCHAR AS BEGIN RETURN param; END;;
|
||||
SHOW CREATE FUNCTION f1;
|
||||
Function sql_mode Create Function character_set_client collation_connection Database Collation
|
||||
f1 PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ORACLE,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_FIELD_OPTIONS,NO_AUTO_CREATE_USER CREATE DEFINER="root"@"localhost" FUNCTION "f1"(param NCHAR) RETURN varchar(2000) CHARSET utf8
|
||||
AS BEGIN RETURN param; END latin1 latin1_swedish_ci latin1_swedish_ci
|
||||
SELECT LENGTH(f1(REPEAT('a',2000)));;
|
||||
LENGTH(f1(REPEAT('a',2000)))
|
||||
2000
|
||||
CREATE TABLE t1 AS SELECT f1(REPEAT('a',2000)) AS a;;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE "t1" (
|
||||
"a" text CHARACTER SET utf8 DEFAULT NULL
|
||||
)
|
||||
DROP TABLE t1;
|
||||
DROP FUNCTION f1;
|
||||
CREATE FUNCTION f1(param BINARY) RETURN BINARY AS BEGIN RETURN param; END;;
|
||||
SHOW CREATE FUNCTION f1;
|
||||
Function sql_mode Create Function character_set_client collation_connection Database Collation
|
||||
f1 PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ORACLE,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_FIELD_OPTIONS,NO_AUTO_CREATE_USER CREATE DEFINER="root"@"localhost" FUNCTION "f1"(param BINARY) RETURN varbinary(2000)
|
||||
AS BEGIN RETURN param; END latin1 latin1_swedish_ci latin1_swedish_ci
|
||||
SELECT LENGTH(f1(REPEAT('a',2000)));;
|
||||
LENGTH(f1(REPEAT('a',2000)))
|
||||
2000
|
||||
CREATE TABLE t1 AS SELECT f1(REPEAT('a',2000)) AS a;;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE "t1" (
|
||||
"a" blob DEFAULT NULL
|
||||
)
|
||||
DROP TABLE t1;
|
||||
DROP FUNCTION f1;
|
||||
CREATE FUNCTION f1(param VARCHAR) RETURN VARCHAR AS BEGIN RETURN param; END;;
|
||||
SHOW CREATE FUNCTION f1;
|
||||
Function sql_mode Create Function character_set_client collation_connection Database Collation
|
||||
f1 PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ORACLE,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_FIELD_OPTIONS,NO_AUTO_CREATE_USER CREATE DEFINER="root"@"localhost" FUNCTION "f1"(param VARCHAR) RETURN varchar(4000) CHARSET latin1
|
||||
AS BEGIN RETURN param; END latin1 latin1_swedish_ci latin1_swedish_ci
|
||||
SELECT LENGTH(f1(REPEAT('a',4000)));;
|
||||
LENGTH(f1(REPEAT('a',4000)))
|
||||
4000
|
||||
CREATE TABLE t1 AS SELECT f1(REPEAT('a',4000)) AS a;;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE "t1" (
|
||||
"a" text DEFAULT NULL
|
||||
)
|
||||
DROP TABLE t1;
|
||||
DROP FUNCTION f1;
|
||||
CREATE FUNCTION f1(param VARCHAR2) RETURN VARCHAR2 AS BEGIN RETURN param; END;;
|
||||
SHOW CREATE FUNCTION f1;
|
||||
Function sql_mode Create Function character_set_client collation_connection Database Collation
|
||||
f1 PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ORACLE,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_FIELD_OPTIONS,NO_AUTO_CREATE_USER CREATE DEFINER="root"@"localhost" FUNCTION "f1"(param VARCHAR2) RETURN varchar(4000) CHARSET latin1
|
||||
AS BEGIN RETURN param; END latin1 latin1_swedish_ci latin1_swedish_ci
|
||||
SELECT LENGTH(f1(REPEAT('a',4000)));;
|
||||
LENGTH(f1(REPEAT('a',4000)))
|
||||
4000
|
||||
CREATE TABLE t1 AS SELECT f1(REPEAT('a',4000)) AS a;;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE "t1" (
|
||||
"a" text DEFAULT NULL
|
||||
)
|
||||
DROP TABLE t1;
|
||||
DROP FUNCTION f1;
|
||||
CREATE FUNCTION f1(param NVARCHAR) RETURN NVARCHAR AS BEGIN RETURN param; END;;
|
||||
SHOW CREATE FUNCTION f1;
|
||||
Function sql_mode Create Function character_set_client collation_connection Database Collation
|
||||
f1 PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ORACLE,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_FIELD_OPTIONS,NO_AUTO_CREATE_USER CREATE DEFINER="root"@"localhost" FUNCTION "f1"(param NVARCHAR) RETURN varchar(4000) CHARSET utf8
|
||||
AS BEGIN RETURN param; END latin1 latin1_swedish_ci latin1_swedish_ci
|
||||
SELECT LENGTH(f1(REPEAT('a',4000)));;
|
||||
LENGTH(f1(REPEAT('a',4000)))
|
||||
4000
|
||||
CREATE TABLE t1 AS SELECT f1(REPEAT('a',4000)) AS a;;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE "t1" (
|
||||
"a" text CHARACTER SET utf8 DEFAULT NULL
|
||||
)
|
||||
DROP TABLE t1;
|
||||
DROP FUNCTION f1;
|
||||
CREATE FUNCTION f1(param VARBINARY) RETURN VARBINARY AS BEGIN RETURN param; END;;
|
||||
SHOW CREATE FUNCTION f1;
|
||||
Function sql_mode Create Function character_set_client collation_connection Database Collation
|
||||
f1 PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ORACLE,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_FIELD_OPTIONS,NO_AUTO_CREATE_USER CREATE DEFINER="root"@"localhost" FUNCTION "f1"(param VARBINARY) RETURN varbinary(4000)
|
||||
AS BEGIN RETURN param; END latin1 latin1_swedish_ci latin1_swedish_ci
|
||||
SELECT LENGTH(f1(REPEAT('a',4000)));;
|
||||
LENGTH(f1(REPEAT('a',4000)))
|
||||
4000
|
||||
CREATE TABLE t1 AS SELECT f1(REPEAT('a',4000)) AS a;;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE "t1" (
|
||||
"a" blob DEFAULT NULL
|
||||
)
|
||||
DROP TABLE t1;
|
||||
DROP FUNCTION f1;
|
||||
CREATE FUNCTION f1(param RAW) RETURN RAW AS BEGIN RETURN param; END;;
|
||||
SHOW CREATE FUNCTION f1;
|
||||
Function sql_mode Create Function character_set_client collation_connection Database Collation
|
||||
f1 PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ORACLE,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_FIELD_OPTIONS,NO_AUTO_CREATE_USER CREATE DEFINER="root"@"localhost" FUNCTION "f1"(param RAW) RETURN varbinary(4000)
|
||||
AS BEGIN RETURN param; END latin1 latin1_swedish_ci latin1_swedish_ci
|
||||
SELECT LENGTH(f1(REPEAT('a',4000)));;
|
||||
LENGTH(f1(REPEAT('a',4000)))
|
||||
4000
|
||||
CREATE TABLE t1 AS SELECT f1(REPEAT('a',4000)) AS a;;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE "t1" (
|
||||
"a" blob DEFAULT NULL
|
||||
)
|
||||
DROP TABLE t1;
|
||||
DROP FUNCTION f1;
|
Reference in New Issue
Block a user