24 lines
901 B
Plaintext
24 lines
901 B
Plaintext
SET sql_mode=ORACLE;
|
|
|
|
--echo #
|
|
--echo # MDEV-12783 sql_mode=ORACLE: Functions LENGTH() and LENGTHB()
|
|
--echo #
|
|
#
|
|
# Testing LENGTH / LENGTHB
|
|
#
|
|
# LENGTH : return the length of char
|
|
# LENGTHB : return the length of byte
|
|
|
|
|
|
SELECT LENGTH(null), LENGTH('a'), LENGTH(123);
|
|
# 10.4 based qc_mysqlembedded recognizes this as QUERY_TYPE_READ, while
|
|
# 10.3 based one recognizes it as QUERY_TYPE_WRITE (i.e. it does not
|
|
# recognize it). qc_sqlite now (May 2019) recognizes it always as READ.
|
|
#SELECT LENGTHB(null), LENGTHB('a'), LENGTHB(123);
|
|
|
|
# qc_sqlite: SELECT LENGTH(_utf8 0xC39F), LENGTH(CHAR(14844588 USING utf8));
|
|
# Sqlite3 error: SQL logic error or missing database, near "0xC39F": syntax error
|
|
# qc_sqlite: SELECT LENGTHB(_utf8 0xC39F), LENGTHB(CHAR(14844588 USING utf8));
|
|
# Sqlite3 error: SQL logic error or missing database, near "0xC39F": syntax error
|
|
EXPLAIN EXTENDED SELECT LENGTH('a'), LENGTHB('a');
|