--source include/have_utf8.inc
--source include/have_innodb.inc
--disable_warnings
drop table if exists `T1`;
drop table if exists `T2`;
drop table if exists `T3`;
drop table if exists `T4`;
drop table if exists `T5`;
drop table if exists `T6`;
drop table if exists `T7`;
drop table if exists `T8`;
drop table if exists `T9`;
--enable_warnings

#
# Test LENGTH() function with Japanese character in utf8 encoding
#

SET NAMES utf8;
SET character_set_database = utf8;

CREATE TABLE `T1` (`C1` char(5), INDEX(`C1`)) DEFAULT CHARSET = utf8 engine = innodb;
CREATE TABLE `T2` (`C1` char(5), INDEX(`C1`)) DEFAULT CHARSET = utf8 engine = innodb;
CREATE TABLE `T3` (`C1` char(5), INDEX(`C1`)) DEFAULT CHARSET = utf8 engine = innodb;
CREATE TABLE `T4` (`C1` char(5), INDEX(`C1`)) DEFAULT CHARSET = utf8 engine = myisam;
CREATE TABLE `T5` (`C1` char(5), INDEX(`C1`)) DEFAULT CHARSET = utf8 engine = myisam;
CREATE TABLE `T6` (`C1` char(5), INDEX(`C1`)) DEFAULT CHARSET = utf8 engine = myisam;
CREATE TABLE `T7` (`C1` char(5), INDEX(`C1`)) DEFAULT CHARSET = utf8 engine = MEMORY;
CREATE TABLE `T8` (`C1` char(5), INDEX(`C1`)) DEFAULT CHARSET = utf8 engine = MEMORY;
CREATE TABLE `T9` (`C1` char(5), INDEX(`C1`)) DEFAULT CHARSET = utf8 engine = MEMORY;

INSERT INTO `T1` VALUES ('アイウエオ'),('アイウエ'),('アイウ'),('アイ'),('ア'),('');
INSERT INTO `T2` VALUES ('あいうえお'),('あいうえ'),('あいう'),('あい'),('あ'),('');
INSERT INTO `T3` VALUES ('龔龖龗龞龡'),('龔龖龗龞'),('龔龖龗'),('龔龖'),('龔'),('');
INSERT INTO `T4` VALUES ('アイウエオ'),('アイウエ'),('アイウ'),('アイ'),('ア'),('');
INSERT INTO `T5` VALUES ('あいうえお'),('あいうえ'),('あいう'),('あい'),('あ'),('');
INSERT INTO `T6` VALUES ('龔龖龗龞龡'),('龔龖龗龞'),('龔龖龗'),('龔龖'),('龔'),('');
INSERT INTO `T7` VALUES ('アイウエオ'),('アイウエ'),('アイウ'),('アイ'),('ア'),('');
INSERT INTO `T8` VALUES ('あいうえお'),('あいうえ'),('あいう'),('あい'),('あ'),('');
INSERT INTO `T9` VALUES ('龔龖龗龞龡'),('龔龖龗龞'),('龔龖龗'),('龔龖'),('龔'),('');

#InnoDB
SELECT `C1`, LENGTH(`C1`) FROM `T1`;
SELECT `C1`, LENGTH(`C1`) FROM `T2`;
SELECT `C1`, LENGTH(`C1`) FROM `T3`;

#MyISAM
SELECT `C1`, LENGTH(`C1`) FROM `T4`;
SELECT `C1`, LENGTH(`C1`) FROM `T5`;
SELECT `C1`, LENGTH(`C1`) FROM `T6`;

#MEMORY
SELECT `C1`, LENGTH(`C1`) FROM `T7`;
SELECT `C1`, LENGTH(`C1`) FROM `T8`;
SELECT `C1`, LENGTH(`C1`) FROM `T9`;

DROP TABLE `T1`;
DROP TABLE `T2`;
DROP TABLE `T3`;
DROP TABLE `T4`;
DROP TABLE `T5`;
DROP TABLE `T6`;
DROP TABLE `T7`;
DROP TABLE `T8`;
DROP TABLE `T9`;