Current Path : /home/usr.opt/mysql57/mysql-test/r/ |
FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64 |
Current File : /home/usr.opt/mysql57/mysql-test/r/func_misc.result |
SET sql_mode = 'NO_ENGINE_SUBSTITUTION'; Warnings: Warning 3090 Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be removed in a future release. DROP TABLE IF EXISTS t1, t2; select format(1.5555,0),format(123.5555,1),format(1234.5555,2),format(12345.55555,3),format(123456.5555,4),format(1234567.5555,5),format("12345.2399",2); format(1.5555,0) format(123.5555,1) format(1234.5555,2) format(12345.55555,3) format(123456.5555,4) format(1234567.5555,5) format("12345.2399",2) 2 123.6 1,234.56 12,345.556 123,456.5555 1,234,567.55550 12,345.24 select inet_ntoa(inet_aton("255.255.255.255.255.255.255.255")); inet_ntoa(inet_aton("255.255.255.255.255.255.255.255")) NULL Warnings: Warning 1411 Incorrect string value: ''255.255.255.255.255.255.255.255'' for function inet_aton select inet_aton("255.255.255.255.255"),inet_aton("255.255.1.255"),inet_aton("0.1.255"); inet_aton("255.255.255.255.255") inet_aton("255.255.1.255") inet_aton("0.1.255") NULL 4294902271 65791 Warnings: Warning 1411 Incorrect string value: ''255.255.255.255.255'' for function inet_aton select inet_ntoa(1099511627775),inet_ntoa(4294902271),inet_ntoa(511); inet_ntoa(1099511627775) inet_ntoa(4294902271) inet_ntoa(511) NULL 255.255.1.255 0.0.1.255 Warnings: Warning 1411 Incorrect integer value: '1099511627775' for function inet_ntoa select hex(inet_aton('127')); hex(inet_aton('127')) 7F select hex(inet_aton('127.1')); hex(inet_aton('127.1')) 7F000001 select hex(inet_aton('127.1.1')); hex(inet_aton('127.1.1')) 7F010001 select inet_aton("122.256"); inet_aton("122.256") NULL Warnings: Warning 1411 Incorrect string value: ''122.256'' for function inet_aton select inet_aton("122.226."); inet_aton("122.226.") NULL Warnings: Warning 1411 Incorrect string value: ''122.226.'' for function inet_aton select inet_aton(""); inet_aton("") NULL Warnings: Warning 1411 Incorrect string value: '''' for function inet_aton explain extended select inet_aton("122.256"),inet_aton("122.226."),inet_aton(""); id select_type table partitions type possible_keys key key_len ref rows filtered Extra 1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL NULL No tables used Warnings: Warning 1681 'EXTENDED' is deprecated and will be removed in a future release. Note 1003 /* select#1 */ select inet_aton('122.256') AS `inet_aton("122.256")`,inet_aton('122.226.') AS `inet_aton("122.226.")`,inet_aton('') AS `inet_aton("")` select length(uuid()), charset(uuid()), length(unhex(replace(uuid(),_utf8'-',_utf8''))); length(uuid()) charset(uuid()) length(unhex(replace(uuid(),_utf8'-',_utf8''))) 36 utf8 16 set @a= uuid_short(); set @b= uuid_short(); select @b - @a; @b - @a 1 select length(format('nan', 2)) > 0; length(format('nan', 2)) > 0 1 Warnings: Warning 1292 Truncated incorrect DOUBLE value: 'nan' select concat("$",format(2500,2)); concat("$",format(2500,2)) $2,500.00 create table t1 ( a timestamp ); insert into t1 values ( '2004-01-06 12:34' ); select a from t1 where left(a+0,6) in ( left(20040106,6) ); a 2004-01-06 12:34:00 select a from t1 where left(a+0,6) = ( left(20040106,6) ); a 2004-01-06 12:34:00 select a from t1 where right(a+0,6) in ( right(20040106123400,6) ); a 2004-01-06 12:34:00 select a from t1 where right(a+0,6) = ( right(20040106123400,6) ); a 2004-01-06 12:34:00 select a from t1 where mid(a+0,6,3) in ( mid(20040106123400,6,3) ); a 2004-01-06 12:34:00 select a from t1 where mid(a+0,6,3) = ( mid(20040106123400,6,3) ); a 2004-01-06 12:34:00 drop table t1; select export_set(3, _latin1'foo', _utf8'bar', ',', 4); export_set(3, _latin1'foo', _utf8'bar', ',', 4) foo,foo,bar,bar End of 4.1 tests create table t1 as select uuid(), length(uuid()); show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `uuid()` varchar(36) CHARACTER SET utf8 NOT NULL DEFAULT '', `length(uuid())` int(10) NOT NULL DEFAULT '0' ) ENGINE=ENGINE DEFAULT CHARSET=latin1 drop table t1; #------------------------------------------------------------------------ # Tests for Bug#6760 and Bug#12689 SET @row_count = 4; SET @sleep_time_per_result_row = 1; SET @max_acceptable_delay = 2; SET @@global.query_cache_size = 1024 * 64; Warnings: Warning 1287 '@@query_cache_size' is deprecated and will be removed in a future release. DROP TEMPORARY TABLE IF EXISTS t_history; DROP TABLE IF EXISTS t1; CREATE TEMPORARY TABLE t_history (attempt SMALLINT, start_ts DATETIME, end_ts DATETIME, start_cached INTEGER, end_cached INTEGER); CREATE TABLE t1 (f1 BIGINT); INSERT INTO t1 VALUES (1); INSERT INTO t1 VALUES (1); INSERT INTO t1 VALUES (1); INSERT INTO t1 VALUES (1); INSERT INTO t_history SET attempt = 4 - 4 + 1, start_ts = NOW(), start_cached = 0; SELECT *, SLEEP(@sleep_time_per_result_row) FROM t1; f1 SLEEP(@sleep_time_per_result_row) 1 0 1 0 1 0 1 0 UPDATE t_history SET end_ts = NOW() WHERE attempt = 4 - 4 + 1; UPDATE t_history SET end_cached = 0 WHERE attempt = 4 - 4 + 1; INSERT INTO t_history SET attempt = 4 - 3 + 1, start_ts = NOW(), start_cached = 0; SELECT *, SLEEP(@sleep_time_per_result_row) FROM t1; f1 SLEEP(@sleep_time_per_result_row) 1 0 1 0 1 0 1 0 UPDATE t_history SET end_ts = NOW() WHERE attempt = 4 - 3 + 1; UPDATE t_history SET end_cached = 0 WHERE attempt = 4 - 3 + 1; INSERT INTO t_history SET attempt = 4 - 2 + 1, start_ts = NOW(), start_cached = 0; SELECT *, SLEEP(@sleep_time_per_result_row) FROM t1; f1 SLEEP(@sleep_time_per_result_row) 1 0 1 0 1 0 1 0 UPDATE t_history SET end_ts = NOW() WHERE attempt = 4 - 2 + 1; UPDATE t_history SET end_cached = 0 WHERE attempt = 4 - 2 + 1; INSERT INTO t_history SET attempt = 4 - 1 + 1, start_ts = NOW(), start_cached = 0; SELECT *, SLEEP(@sleep_time_per_result_row) FROM t1; f1 SLEEP(@sleep_time_per_result_row) 1 0 1 0 1 0 1 0 UPDATE t_history SET end_ts = NOW() WHERE attempt = 4 - 1 + 1; UPDATE t_history SET end_cached = 0 WHERE attempt = 4 - 1 + 1; # Test 1: Does the query with SLEEP need a reasonable time? SELECT COUNT(*) >= 4 - 1 INTO @aux1 FROM t_history WHERE TIMEDIFF(end_ts,start_ts) - @sleep_time_per_result_row * @row_count BETWEEN 0 AND @max_acceptable_delay; SELECT @aux1 AS "Expect 1"; Expect 1 1 # Test 2: Does the query with SLEEP need a reasonable time even in case # of the non first execution? SELECT COUNT(*) >= 4 - 1 - 1 INTO @aux2 FROM t_history WHERE TIMEDIFF(end_ts,start_ts) - @sleep_time_per_result_row * @row_count BETWEEN 0 AND @max_acceptable_delay AND attempt > 1; SELECT @aux2 AS "Expect 1"; Expect 1 1 # Test 3: The query with SLEEP must be not cached. SELECT COUNT(*) = 4 INTO @aux3 FROM t_history WHERE end_cached = start_cached; SELECT @aux3 AS "Expect 1"; Expect 1 1 DROP TABLE t1; DROP TEMPORARY TABLE t_history; SET @@global.query_cache_size = default; Warnings: Warning 1287 '@@query_cache_size' is deprecated and will be removed in a future release. create table t1 select INET_ATON('255.255.0.1') as `a`; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` bigint(21) unsigned DEFAULT NULL ) ENGINE=ENGINE DEFAULT CHARSET=latin1 drop table t1; drop table if exists table_26093; drop function if exists func_26093_a; drop function if exists func_26093_b; create table table_26093(a int); insert into table_26093 values (1), (2), (3), (4), (5), (6), (7), (8), (9), (10); create function func_26093_a(x int) returns int begin set @invoked := @invoked + 1; return x; end// create function func_26093_b(x int, y int) returns int begin set @invoked := @invoked + 1; return x; end// select avg(a) from table_26093; avg(a) 5.5000 select benchmark(100, (select avg(a) from table_26093)); benchmark(100, (select avg(a) from table_26093)) 0 set @invoked := 0; select benchmark(100, (select avg(func_26093_a(a)) from table_26093)); benchmark(100, (select avg(func_26093_a(a)) from table_26093)) 0 select @invoked; @invoked 10 set @invoked := 0; select benchmark(100, (select avg(func_26093_b(a, rand())) from table_26093)); benchmark(100, (select avg(func_26093_b(a, rand())) from table_26093)) 0 select @invoked; @invoked 1000 select benchmark(100, (select (a) from table_26093)); ERROR 21000: Subquery returns more than 1 row select benchmark(100, (select 1, 1)); ERROR 21000: Operand should contain 1 column(s) drop table table_26093; drop function func_26093_a; drop function func_26093_b; SELECT NAME_CONST('test', NOW()); ERROR HY000: Incorrect arguments to NAME_CONST SELECT NAME_CONST('test', UPPER('test')); ERROR HY000: Incorrect arguments to NAME_CONST SELECT NAME_CONST('test', NULL); test NULL SELECT NAME_CONST('test', 1); test 1 SELECT NAME_CONST('test', -1); test -1 SELECT NAME_CONST('test', 1.0); test 1.0 SELECT NAME_CONST('test', -1.0); test -1.0 SELECT NAME_CONST('test', 'test'); test test CREATE TABLE t1 (a INT); INSERT INTO t1 VALUES (1),(2),(3); SELECT NAME_CONST('flag',1) * MAX(a) FROM t1; NAME_CONST('flag',1) * MAX(a) 3 SELECT NAME_CONST('flag',1.5) * MAX(a) FROM t1; NAME_CONST('flag',1.5) * MAX(a) 4.5 SELECT NAME_CONST('flag',-1) * MAX(a) FROM t1; NAME_CONST('flag',-1) * MAX(a) -3 SELECT NAME_CONST('flag',-1.5) * MAX(a) FROM t1; NAME_CONST('flag',-1.5) * MAX(a) -4.5 SELECT NAME_CONST('flag', SQRT(4)) * MAX(a) FROM t1; ERROR HY000: Incorrect arguments to NAME_CONST SELECT NAME_CONST('flag',-SQRT(4)) * MAX(a) FROM t1; ERROR HY000: Incorrect arguments to NAME_CONST DROP TABLE t1; CREATE TABLE t1 (a int); INSERT INTO t1 VALUES (5), (2); SELECT NAME_CONST(x,2) FROM (SELECT a x FROM t1) t; ERROR HY000: Incorrect arguments to NAME_CONST DROP TABLE t1; CREATE TABLE t1(a INT); INSERT INTO t1 VALUES (), (), (); SELECT NAME_CONST(a, '1') FROM t1; ERROR HY000: Incorrect arguments to NAME_CONST SET INSERT_ID= NAME_CONST(a, a); ERROR HY000: Incorrect arguments to NAME_CONST DROP TABLE t1; create table t1 (a int not null); insert into t1 values (-1), (-2); select min(a) from t1 group by inet_ntoa(a); min(a) -2 Warnings: Warning 1411 Incorrect integer value: '`test`.`t1`.`a`' for function inet_ntoa Warning 1411 Incorrect integer value: '`test`.`t1`.`a`' for function inet_ntoa Warning 1411 Incorrect integer value: '`test`.`t1`.`a`' for function inet_ntoa drop table t1; SELECT NAME_CONST('var', 'value') COLLATE latin1_general_cs; NAME_CONST('var', 'value') COLLATE latin1_general_cs value select @@session.time_zone into @save_tz; set @@session.time_zone='UTC'; select uuid() into @my_uuid; select mid(@my_uuid,15,1); mid(@my_uuid,15,1) 1 select 24 * 60 * 60 * 1000 * 1000 * 10 into @my_uuid_one_day; select concat('0',mid(@my_uuid,16,3),mid(@my_uuid,10,4),left(@my_uuid,8)) into @my_uuidate; select floor(conv(@my_uuidate,16,10)/@my_uuid_one_day) into @my_uuid_date; select 141427 + datediff(curdate(),'1970-01-01') into @my_uuid_synthetic; select @my_uuid_date - @my_uuid_synthetic; @my_uuid_date - @my_uuid_synthetic 0 set @@session.time_zone=@save_tz; CREATE TABLE t1 (a DATE); SELECT * FROM t1 WHERE a = NAME_CONST('reportDate', _binary'2009-01-09' COLLATE 'binary'); a DROP TABLE t1; select NAME_CONST('_id',1234) as id; id 1234 End of 5.0 tests SELECT NAME_CONST('a', -(1 OR 2)) OR 1; ERROR HY000: Incorrect arguments to NAME_CONST SELECT NAME_CONST('a', -(1 AND 2)) OR 1; ERROR HY000: Incorrect arguments to NAME_CONST SELECT NAME_CONST('a', -(1)) OR 1; NAME_CONST('a', -(1)) OR 1 1 select connection_id() > 0; connection_id() > 0 1 # # Bug #54461: crash with longblob and union or update with subquery # CREATE TABLE t1 (a INT, b LONGBLOB); INSERT INTO t1 VALUES (1, '2'), (2, '3'), (3, '2'); SELECT DISTINCT LEAST(a, (SELECT b FROM t1 LIMIT 1)) FROM t1 UNION SELECT 1; LEAST(a, (SELECT b FROM t1 LIMIT 1)) 1 2 SELECT DISTINCT GREATEST(a, (SELECT b FROM t1 LIMIT 1)) FROM t1 UNION SELECT 1; GREATEST(a, (SELECT b FROM t1 LIMIT 1)) 2 3 1 DROP TABLE t1; SELECT INET_NTOA(0); INET_NTOA(0) 0.0.0.0 SELECT '1' IN ('1', INET_NTOA(0)); '1' IN ('1', INET_NTOA(0)) 1 # # Bug #52165: Assertion failed: file .\dtoa.c, line 465 # CREATE TABLE t1 (a SET('a'), b INT); INSERT INTO t1 VALUES ('', 0); SELECT COALESCE(a) = COALESCE(b) FROM t1; COALESCE(a) = COALESCE(b) 1 DROP TABLE t1; # # Bug #54461: crash with longblob and union or update with subquery # CREATE TABLE t1 (a INT, b LONGBLOB); INSERT INTO t1 VALUES (1, '2'), (2, '3'), (3, '2'); SELECT DISTINCT LEAST(a, (SELECT b FROM t1 LIMIT 1)) FROM t1 UNION SELECT 1; LEAST(a, (SELECT b FROM t1 LIMIT 1)) 1 2 SELECT DISTINCT GREATEST(a, (SELECT b FROM t1 LIMIT 1)) FROM t1 UNION SELECT 1; GREATEST(a, (SELECT b FROM t1 LIMIT 1)) 2 3 1 DROP TABLE t1; SELECT INET_NTOA(0); INET_NTOA(0) 0.0.0.0 SELECT '1' IN ('1', INET_NTOA(0)); '1' IN ('1', INET_NTOA(0)) 1 # # End of 5.1 tests # # # Bug #58199: name_const in the having clause crashes # CREATE TABLE t1 (a INT); SELECT 1 from t1 HAVING NAME_CONST('', a); ERROR HY000: Incorrect arguments to NAME_CONST DROP TABLE t1; # # End of 5.5 tests # # -- # -- WL#5787: IPv6-capable INET_ATON and INET_NTOA functions. # -- # -- INET6_ATON: checking NULL, invalid types, out-of range values... SELECT INET6_ATON(NULL) IS NULL; INET6_ATON(NULL) IS NULL 1 SELECT INET6_ATON(123) IS NULL; INET6_ATON(123) IS NULL 1 Warnings: Warning 1411 Incorrect string value: '123' for function inet6_aton SELECT INET6_ATON(123.45) IS NULL; INET6_ATON(123.45) IS NULL 1 Warnings: Warning 1411 Incorrect string value: '123.45' for function inet6_aton SELECT INET6_ATON(str_to_date('2014,2,28 09', '%Y,%m,%d %h')) IS NULL; INET6_ATON(str_to_date('2014,2,28 09', '%Y,%m,%d %h')) IS NULL 1 Warnings: Warning 1411 Incorrect string value: 'str_to_date('2014,2,28 09','%Y,%m,%d %h')' for function inet6_aton SELECT INET6_ATON('1.2.3') IS NULL; INET6_ATON('1.2.3') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''1.2.3'' for function inet6_aton SELECT INET6_ATON('1.2.3.') IS NULL; INET6_ATON('1.2.3.') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''1.2.3.'' for function inet6_aton SELECT INET6_ATON('1..3.4') IS NULL; INET6_ATON('1..3.4') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''1..3.4'' for function inet6_aton SELECT INET6_ATON('-1.2.3.4') IS NULL; INET6_ATON('-1.2.3.4') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''-1.2.3.4'' for function inet6_aton SELECT INET6_ATON('1.2.3.256') IS NULL; INET6_ATON('1.2.3.256') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''1.2.3.256'' for function inet6_aton SELECT INET6_ATON('1.2.3.4.5') IS NULL; INET6_ATON('1.2.3.4.5') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''1.2.3.4.5'' for function inet6_aton SELECT INET6_ATON('0001.2.3.4') IS NULL; INET6_ATON('0001.2.3.4') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''0001.2.3.4'' for function inet6_aton SELECT INET6_ATON('0x1.2.3.4') IS NULL; INET6_ATON('0x1.2.3.4') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''0x1.2.3.4'' for function inet6_aton SELECT INET6_ATON('a.2.3.4') IS NULL; INET6_ATON('a.2.3.4') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''a.2.3.4'' for function inet6_aton SELECT INET6_ATON('1.2.3.4:80') IS NULL; INET6_ATON('1.2.3.4:80') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''1.2.3.4:80'' for function inet6_aton SELECT INET6_ATON('1.2.3.4/32') IS NULL; INET6_ATON('1.2.3.4/32') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''1.2.3.4/32'' for function inet6_aton SELECT INET6_ATON('mysql.com') IS NULL; INET6_ATON('mysql.com') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''mysql.com'' for function inet6_aton SELECT INET6_ATON(':::') IS NULL; INET6_ATON(':::') IS NULL 1 Warnings: Warning 1411 Incorrect string value: '':::'' for function inet6_aton SELECT INET6_ATON(':1:2:3') IS NULL; INET6_ATON(':1:2:3') IS NULL 1 Warnings: Warning 1411 Incorrect string value: '':1:2:3'' for function inet6_aton SELECT INET6_ATON('1:2:3:') IS NULL; INET6_ATON('1:2:3:') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''1:2:3:'' for function inet6_aton SELECT INET6_ATON(':1::2:3') IS NULL; INET6_ATON(':1::2:3') IS NULL 1 Warnings: Warning 1411 Incorrect string value: '':1::2:3'' for function inet6_aton SELECT INET6_ATON('1::2:3:') IS NULL; INET6_ATON('1::2:3:') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''1::2:3:'' for function inet6_aton SELECT INET6_ATON('::00001') IS NULL; INET6_ATON('::00001') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''::00001'' for function inet6_aton SELECT INET6_ATON('::00001:2') IS NULL; INET6_ATON('::00001:2') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''::00001:2'' for function inet6_aton SELECT INET6_ATON('::12345') IS NULL; INET6_ATON('::12345') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''::12345'' for function inet6_aton SELECT INET6_ATON('1020::3040::5060') IS NULL; INET6_ATON('1020::3040::5060') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''1020::3040::5060'' for function inet6_aton SELECT INET6_ATON('::ABCZ') IS NULL; INET6_ATON('::ABCZ') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''::ABCZ'' for function inet6_aton SELECT INET6_ATON('::0x1.2.3.4') IS NULL; INET6_ATON('::0x1.2.3.4') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''::0x1.2.3.4'' for function inet6_aton SELECT INET6_ATON('::1.0x2.3.4') IS NULL; INET6_ATON('::1.0x2.3.4') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''::1.0x2.3.4'' for function inet6_aton SELECT INET6_ATON('::a.b.c.d') IS NULL; INET6_ATON('::a.b.c.d') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''::a.b.c.d'' for function inet6_aton SELECT INET6_ATON('::FFFF:0x1.2.3.4') IS NULL; INET6_ATON('::FFFF:0x1.2.3.4') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''::FFFF:0x1.2.3.4'' for function inet6_aton SELECT INET6_ATON('::FFFF:1.0x2.3.4') IS NULL; INET6_ATON('::FFFF:1.0x2.3.4') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''::FFFF:1.0x2.3.4'' for function inet6_aton SELECT INET6_ATON('::FFFF:a.b.c.d') IS NULL; INET6_ATON('::FFFF:a.b.c.d') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''::FFFF:a.b.c.d'' for function inet6_aton SELECT INET6_ATON('::1.2.3.4:ABCD') IS NULL; INET6_ATON('::1.2.3.4:ABCD') IS NULL 1 Warnings: Warning 1411 Incorrect string value: ''::1.2.3.4:ABCD'' for function inet6_aton # NOTE: such addresses are supported because getaddrinfo() supports them. # This is just to record the current behaviour. SELECT HEX(INET6_ATON('::ABCD:1.2.3.4')); HEX(INET6_ATON('::ABCD:1.2.3.4')) 00000000000000000000ABCD01020304 # -- INET6_ATON: checking binary representation... SELECT HEX(INET6_ATON('0.0.0.0')); HEX(INET6_ATON('0.0.0.0')) 00000000 SELECT HEX(INET6_ATON('00.00.00.00')); HEX(INET6_ATON('00.00.00.00')) 00000000 SELECT HEX(INET6_ATON('000.000.000.000')); HEX(INET6_ATON('000.000.000.000')) 00000000 SELECT HEX(INET6_ATON('1.2.3.4')); HEX(INET6_ATON('1.2.3.4')) 01020304 SELECT HEX(INET6_ATON('01.02.03.04')); HEX(INET6_ATON('01.02.03.04')) 01020304 SELECT HEX(INET6_ATON('001.002.003.004')); HEX(INET6_ATON('001.002.003.004')) 01020304 SELECT HEX(INET6_ATON('255.255.255.255')); HEX(INET6_ATON('255.255.255.255')) FFFFFFFF SELECT HEX(INET6_ATON('::')); HEX(INET6_ATON('::')) 00000000000000000000000000000000 SELECT HEX(INET6_ATON('0::0')); HEX(INET6_ATON('0::0')) 00000000000000000000000000000000 SELECT HEX(INET6_ATON('1::2')); HEX(INET6_ATON('1::2')) 00010000000000000000000000000002 SELECT HEX(INET6_ATON('0::')); HEX(INET6_ATON('0::')) 00000000000000000000000000000000 SELECT HEX(INET6_ATON('1::')); HEX(INET6_ATON('1::')) 00010000000000000000000000000000 SELECT HEX(INET6_ATON('::0')); HEX(INET6_ATON('::0')) 00000000000000000000000000000000 SELECT HEX(INET6_ATON('::1')); HEX(INET6_ATON('::1')) 00000000000000000000000000000001 SELECT HEX(INET6_ATON('1:2:3:4:5:6:7:8')); HEX(INET6_ATON('1:2:3:4:5:6:7:8')) 00010002000300040005000600070008 SELECT HEX(INET6_ATON('::2:3:4:5:6:7:8')); HEX(INET6_ATON('::2:3:4:5:6:7:8')) 00000002000300040005000600070008 SELECT HEX(INET6_ATON('1::3:4:5:6:7:8')); HEX(INET6_ATON('1::3:4:5:6:7:8')) 00010000000300040005000600070008 SELECT HEX(INET6_ATON('1:2::4:5:6:7:8')); HEX(INET6_ATON('1:2::4:5:6:7:8')) 00010002000000040005000600070008 SELECT HEX(INET6_ATON('1:2:3::5:6:7:8')); HEX(INET6_ATON('1:2:3::5:6:7:8')) 00010002000300000005000600070008 SELECT HEX(INET6_ATON('1:2:3:4::6:7:8')); HEX(INET6_ATON('1:2:3:4::6:7:8')) 00010002000300040000000600070008 SELECT HEX(INET6_ATON('1:2:3:4:5::7:8')); HEX(INET6_ATON('1:2:3:4:5::7:8')) 00010002000300040005000000070008 SELECT HEX(INET6_ATON('1:2:3:4:5:6::8')); HEX(INET6_ATON('1:2:3:4:5:6::8')) 00010002000300040005000600000008 SELECT HEX(INET6_ATON('1:2:3:4:5:6:7::')); HEX(INET6_ATON('1:2:3:4:5:6:7::')) 00010002000300040005000600070000 SELECT HEX(INET6_ATON('0000:0000::0000:0001')); HEX(INET6_ATON('0000:0000::0000:0001')) 00000000000000000000000000000001 SELECT HEX(INET6_ATON('1234:5678:9abc:def0:4321:8765:cba9:0fed')); HEX(INET6_ATON('1234:5678:9abc:def0:4321:8765:cba9:0fed')) 123456789ABCDEF043218765CBA90FED SELECT HEX(INET6_ATON('0000:0000:0000:0000:0000:0000:0000:0001')); HEX(INET6_ATON('0000:0000:0000:0000:0000:0000:0000:0001')) 00000000000000000000000000000001 SELECT HEX(INET6_ATON('::C0A8:0102')); HEX(INET6_ATON('::C0A8:0102')) 000000000000000000000000C0A80102 SELECT HEX(INET6_ATON('::c0a8:0102')); HEX(INET6_ATON('::c0a8:0102')) 000000000000000000000000C0A80102 SELECT HEX(INET6_ATON('::192.168.1.2')); HEX(INET6_ATON('::192.168.1.2')) 000000000000000000000000C0A80102 SELECT HEX(INET6_ATON('::FfFf:C0a8:0102')); HEX(INET6_ATON('::FfFf:C0a8:0102')) 00000000000000000000FFFFC0A80102 SELECT HEX(INET6_ATON('::ffff:c0a8:0102')); HEX(INET6_ATON('::ffff:c0a8:0102')) 00000000000000000000FFFFC0A80102 SELECT HEX(INET6_ATON('::ffff:192.168.1.2')); HEX(INET6_ATON('::ffff:192.168.1.2')) 00000000000000000000FFFFC0A80102 SELECT HEX(INET6_ATON('::01.2.3.4')); HEX(INET6_ATON('::01.2.3.4')) 00000000000000000000000001020304 SELECT HEX(INET6_ATON('::1.02.3.4')); HEX(INET6_ATON('::1.02.3.4')) 00000000000000000000000001020304 SELECT HEX(INET6_ATON('::1.2.03.4')); HEX(INET6_ATON('::1.2.03.4')) 00000000000000000000000001020304 SELECT HEX(INET6_ATON('::1.2.3.04')); HEX(INET6_ATON('::1.2.3.04')) 00000000000000000000000001020304 SELECT HEX(INET6_ATON('::1.2.3.00')); HEX(INET6_ATON('::1.2.3.00')) 00000000000000000000000001020300 SELECT HEX(INET6_ATON('::FFFF:01.2.3.4')); HEX(INET6_ATON('::FFFF:01.2.3.4')) 00000000000000000000FFFF01020304 SELECT HEX(INET6_ATON('::FFFF:1.02.3.4')); HEX(INET6_ATON('::FFFF:1.02.3.4')) 00000000000000000000FFFF01020304 SELECT HEX(INET6_ATON('::FFFF:1.2.03.4')); HEX(INET6_ATON('::FFFF:1.2.03.4')) 00000000000000000000FFFF01020304 SELECT HEX(INET6_ATON('::FFFF:1.2.3.04')); HEX(INET6_ATON('::FFFF:1.2.3.04')) 00000000000000000000FFFF01020304 SELECT HEX(INET6_ATON('::FFFF:1.2.3.00')); HEX(INET6_ATON('::FFFF:1.2.3.00')) 00000000000000000000FFFF01020300 # -- INET6_ATON: checking the length is either 4 or 16... SELECT LENGTH(INET6_ATON('0.0.0.0')); LENGTH(INET6_ATON('0.0.0.0')) 4 SELECT LENGTH(INET6_ATON('255.255.255.255')); LENGTH(INET6_ATON('255.255.255.255')) 4 SELECT LENGTH(INET6_ATON('::')); LENGTH(INET6_ATON('::')) 16 SELECT LENGTH(INET6_ATON('1020:3040:5060:7080:90A0:B0C0:D0E0:F010')); LENGTH(INET6_ATON('1020:3040:5060:7080:90A0:B0C0:D0E0:F010')) 16 # -- INET6_NTOA: checking NULL, invalid types, out-of range values... SELECT INET6_NTOA(NULL); INET6_NTOA(NULL) NULL SELECT INET6_NTOA(123); INET6_NTOA(123) NULL Warnings: Warning 1411 Incorrect string value: '123' for function inet6_ntoa SELECT INET6_NTOA(123.456); INET6_NTOA(123.456) NULL Warnings: Warning 1411 Incorrect string value: '123.456' for function inet6_ntoa SELECT INET6_NTOA(str_to_date('2014,2,28 09', '%Y,%m,%d %h')); INET6_NTOA(str_to_date('2014,2,28 09', '%Y,%m,%d %h')) NULL Warnings: Warning 1411 Incorrect string value: 'str_to_date('2014,2,28 09','%Y,%m,%d %h')' for function inet6_ntoa SELECT INET6_NTOA(UNHEX('C0A801')); INET6_NTOA(UNHEX('C0A801')) NULL Warnings: Warning 1411 Incorrect string value: 'unhex('C0A801')' for function inet6_ntoa SELECT INET6_NTOA(UNHEX('C0A80102')); INET6_NTOA(UNHEX('C0A80102')) 192.168.1.2 SELECT INET6_NTOA(UNHEX('C0A8010203')); INET6_NTOA(UNHEX('C0A8010203')) NULL Warnings: Warning 1411 Incorrect string value: 'unhex('C0A8010203')' for function inet6_ntoa SELECT INET6_NTOA(UNHEX('0102030405060708090A0B0C0D0E0F')); INET6_NTOA(UNHEX('0102030405060708090A0B0C0D0E0F')) NULL Warnings: Warning 1411 Incorrect string value: 'unhex('0102030405060708090A0B0C0D0E0F')' for function inet6_ntoa SELECT INET6_NTOA(UNHEX('0102030405060708090A0B0C0D0E0F10')); INET6_NTOA(UNHEX('0102030405060708090A0B0C0D0E0F10')) 102:304:506:708:90a:b0c:d0e:f10 SELECT INET6_NTOA(UNHEX('0102030405060708090A0B0C0D0E0F1011')); INET6_NTOA(UNHEX('0102030405060708090A0B0C0D0E0F1011')) NULL Warnings: Warning 1411 Incorrect string value: 'unhex('0102030405060708090A0B0C0D0E0F1011')' for function inet6_ntoa SELECT INET6_NTOA('1234'), INET6_NTOA(BINARY('1234')); INET6_NTOA('1234') INET6_NTOA(BINARY('1234')) NULL 49.50.51.52 Warnings: Warning 1411 Incorrect string value: ''1234'' for function inet6_ntoa SELECT INET6_NTOA('0123456789abcdef'), INET6_NTOA(BINARY('0123456789abcdef')); INET6_NTOA('0123456789abcdef') INET6_NTOA(BINARY('0123456789abcdef')) NULL 3031:3233:3435:3637:3839:6162:6364:6566 Warnings: Warning 1411 Incorrect string value: ''0123456789abcdef'' for function inet6_ntoa # -- Checking double-conversion... SELECT INET6_NTOA(INET6_ATON('::')); INET6_NTOA(INET6_ATON('::')) :: SELECT INET6_NTOA(INET6_ATON('0::0')); INET6_NTOA(INET6_ATON('0::0')) :: SELECT INET6_NTOA(INET6_ATON('1::2')); INET6_NTOA(INET6_ATON('1::2')) 1::2 SELECT INET6_NTOA(INET6_ATON('0::')); INET6_NTOA(INET6_ATON('0::')) :: SELECT INET6_NTOA(INET6_ATON('1::')); INET6_NTOA(INET6_ATON('1::')) 1:: SELECT INET6_NTOA(INET6_ATON('::0')); INET6_NTOA(INET6_ATON('::0')) :: SELECT INET6_NTOA(INET6_ATON('::1')); INET6_NTOA(INET6_ATON('::1')) ::1 SELECT INET6_NTOA(INET6_ATON('1:2:3:4:5:6:7:8')); INET6_NTOA(INET6_ATON('1:2:3:4:5:6:7:8')) 1:2:3:4:5:6:7:8 SELECT INET6_NTOA(INET6_ATON('::2:3:4:5:6:7:8')); INET6_NTOA(INET6_ATON('::2:3:4:5:6:7:8')) ::2:3:4:5:6:7:8 SELECT INET6_NTOA(INET6_ATON('1::3:4:5:6:7:8')); INET6_NTOA(INET6_ATON('1::3:4:5:6:7:8')) 1::3:4:5:6:7:8 SELECT INET6_NTOA(INET6_ATON('1:2::4:5:6:7:8')); INET6_NTOA(INET6_ATON('1:2::4:5:6:7:8')) 1:2::4:5:6:7:8 SELECT INET6_NTOA(INET6_ATON('1:2:3::5:6:7:8')); INET6_NTOA(INET6_ATON('1:2:3::5:6:7:8')) 1:2:3::5:6:7:8 SELECT INET6_NTOA(INET6_ATON('1:2:3:4::6:7:8')); INET6_NTOA(INET6_ATON('1:2:3:4::6:7:8')) 1:2:3:4::6:7:8 SELECT INET6_NTOA(INET6_ATON('1:2:3:4:5::7:8')); INET6_NTOA(INET6_ATON('1:2:3:4:5::7:8')) 1:2:3:4:5::7:8 SELECT INET6_NTOA(INET6_ATON('1:2:3:4:5:6::8')); INET6_NTOA(INET6_ATON('1:2:3:4:5:6::8')) 1:2:3:4:5:6::8 SELECT INET6_NTOA(INET6_ATON('1:2:3:4:5:6:7::')); INET6_NTOA(INET6_ATON('1:2:3:4:5:6:7::')) 1:2:3:4:5:6:7:: SELECT INET6_NTOA(INET6_ATON('0000:0000::0000:0001')); INET6_NTOA(INET6_ATON('0000:0000::0000:0001')) ::1 SELECT INET6_NTOA(INET6_ATON('1234:5678:9abc:def0:4321:8765:cba9:0fed')); INET6_NTOA(INET6_ATON('1234:5678:9abc:def0:4321:8765:cba9:0fed')) 1234:5678:9abc:def0:4321:8765:cba9:fed SELECT INET6_NTOA(INET6_ATON('0000:0000:0000:0000:0000:0000:0000:0001')); INET6_NTOA(INET6_ATON('0000:0000:0000:0000:0000:0000:0000:0001')) ::1 SELECT INET6_NTOA(INET6_ATON('::C0A8:0102')); INET6_NTOA(INET6_ATON('::C0A8:0102')) ::192.168.1.2 SELECT INET6_NTOA(INET6_ATON('::c0a8:0102')); INET6_NTOA(INET6_ATON('::c0a8:0102')) ::192.168.1.2 SELECT INET6_NTOA(INET6_ATON('::192.168.1.2')); INET6_NTOA(INET6_ATON('::192.168.1.2')) ::192.168.1.2 SELECT INET6_NTOA(INET6_ATON('::FfFf:C0a8:0102')); INET6_NTOA(INET6_ATON('::FfFf:C0a8:0102')) ::ffff:192.168.1.2 SELECT INET6_NTOA(INET6_ATON('::ffff:c0a8:0102')); INET6_NTOA(INET6_ATON('::ffff:c0a8:0102')) ::ffff:192.168.1.2 SELECT INET6_NTOA(INET6_ATON('::ffff:192.168.1.2')); INET6_NTOA(INET6_ATON('::ffff:192.168.1.2')) ::ffff:192.168.1.2 SELECT INET6_NTOA(INET6_ATON('::01.2.3.4')); INET6_NTOA(INET6_ATON('::01.2.3.4')) ::1.2.3.4 SELECT INET6_NTOA(INET6_ATON('::1.02.3.4')); INET6_NTOA(INET6_ATON('::1.02.3.4')) ::1.2.3.4 SELECT INET6_NTOA(INET6_ATON('::1.2.03.4')); INET6_NTOA(INET6_ATON('::1.2.03.4')) ::1.2.3.4 SELECT INET6_NTOA(INET6_ATON('::1.2.3.04')); INET6_NTOA(INET6_ATON('::1.2.3.04')) ::1.2.3.4 SELECT INET6_NTOA(INET6_ATON('::1.2.3.00')); INET6_NTOA(INET6_ATON('::1.2.3.00')) ::1.2.3.0 SELECT INET6_NTOA(INET6_ATON('::FFFF:01.2.3.4')); INET6_NTOA(INET6_ATON('::FFFF:01.2.3.4')) ::ffff:1.2.3.4 SELECT INET6_NTOA(INET6_ATON('::FFFF:1.02.3.4')); INET6_NTOA(INET6_ATON('::FFFF:1.02.3.4')) ::ffff:1.2.3.4 SELECT INET6_NTOA(INET6_ATON('::FFFF:1.2.03.4')); INET6_NTOA(INET6_ATON('::FFFF:1.2.03.4')) ::ffff:1.2.3.4 SELECT INET6_NTOA(INET6_ATON('::FFFF:1.2.3.04')); INET6_NTOA(INET6_ATON('::FFFF:1.2.3.04')) ::ffff:1.2.3.4 SELECT INET6_NTOA(INET6_ATON('::FFFF:1.2.3.00')); INET6_NTOA(INET6_ATON('::FFFF:1.2.3.00')) ::ffff:1.2.3.0 # -- Comparing INET_ATON() and INET6_ATON()... SELECT HEX(INET_ATON('192.168.1.2')); HEX(INET_ATON('192.168.1.2')) C0A80102 SELECT HEX(INET6_ATON('192.168.1.2')); HEX(INET6_ATON('192.168.1.2')) C0A80102 SELECT HEX(INET_ATON('255.255.255.255')); HEX(INET_ATON('255.255.255.255')) FFFFFFFF SELECT HEX(INET6_ATON('255.255.255.255')); HEX(INET6_ATON('255.255.255.255')) FFFFFFFF SELECT HEX(INET_ATON('192.168.08.2')); HEX(INET_ATON('192.168.08.2')) C0A80802 SELECT HEX(INET6_ATON('192.168.08.2')); HEX(INET6_ATON('192.168.08.2')) C0A80802 SELECT HEX(INET_ATON('192.168.0x8.2')); HEX(INET_ATON('192.168.0x8.2')) NULL Warnings: Warning 1411 Incorrect string value: ''192.168.0x8.2'' for function inet_aton SELECT HEX(INET6_ATON('192.168.0x8.2')); HEX(INET6_ATON('192.168.0x8.2')) NULL Warnings: Warning 1411 Incorrect string value: ''192.168.0x8.2'' for function inet6_aton SELECT HEX(INET_ATON('1.2.255')); HEX(INET_ATON('1.2.255')) 10200FF SELECT HEX(INET6_ATON('1.2.255')); HEX(INET6_ATON('1.2.255')) NULL Warnings: Warning 1411 Incorrect string value: ''1.2.255'' for function inet6_aton SELECT HEX(INET_ATON('1.2.256')); HEX(INET_ATON('1.2.256')) NULL Warnings: Warning 1411 Incorrect string value: ''1.2.256'' for function inet_aton SELECT HEX(INET6_ATON('1.2.256')); HEX(INET6_ATON('1.2.256')) NULL Warnings: Warning 1411 Incorrect string value: ''1.2.256'' for function inet6_aton SELECT HEX(INET_ATON('1.0002.3.4')); HEX(INET_ATON('1.0002.3.4')) 1020304 SELECT HEX(INET6_ATON('1.0002.3.4')); HEX(INET6_ATON('1.0002.3.4')) NULL Warnings: Warning 1411 Incorrect string value: ''1.0002.3.4'' for function inet6_aton SELECT HEX(INET_ATON('1.2.3.4.5')); HEX(INET_ATON('1.2.3.4.5')) NULL Warnings: Warning 1411 Incorrect string value: ''1.2.3.4.5'' for function inet_aton SELECT HEX(INET6_ATON('1.2.3.4.5')); HEX(INET6_ATON('1.2.3.4.5')) NULL Warnings: Warning 1411 Incorrect string value: ''1.2.3.4.5'' for function inet6_aton # -- Checking mix of INET- and INET6- functions... SELECT HEX(INET6_ATON(INET_NTOA(INET_ATON('1.2.3.4')))) AS x; x 01020304 # -- Checking IS_IPV4() / IS_IPV6()... SELECT IS_IPV4(NULL); IS_IPV4(NULL) 0 SELECT IS_IPV4(1); IS_IPV4(1) 0 SELECT IS_IPV4(1.0); IS_IPV4(1.0) 0 SELECT IS_IPV4('1.2.3.4'); IS_IPV4('1.2.3.4') 1 SELECT IS_IPV4('001.02.000.255'); IS_IPV4('001.02.000.255') 1 SELECT IS_IPV4('::1.2.0.255'); IS_IPV4('::1.2.0.255') 0 SELECT IS_IPV4('::1'); IS_IPV4('::1') 0 SELECT IS_IPV4(BINARY('1.2.3.4')); IS_IPV4(BINARY('1.2.3.4')) 1 SELECT IS_IPV6(NULL); IS_IPV6(NULL) 0 SELECT IS_IPV6(1); IS_IPV6(1) 0 SELECT IS_IPV6(1.0); IS_IPV6(1.0) 0 SELECT IS_IPV6('1.2.3.4'); IS_IPV6('1.2.3.4') 0 SELECT IS_IPV6('001.02.000.255'); IS_IPV6('001.02.000.255') 0 SELECT IS_IPV6('::001.02.000.255'); IS_IPV6('::001.02.000.255') 1 SELECT IS_IPV6('::1.2.0.255'); IS_IPV6('::1.2.0.255') 1 SELECT IS_IPV6('::1'); IS_IPV6('::1') 1 SELECT IS_IPV6('0000:0000:0000:0000:0000:0000:0000:0001'); IS_IPV6('0000:0000:0000:0000:0000:0000:0000:0001') 1 SELECT IS_IPV6(BINARY('0000:0000:0000:0000:0000:0000:0000:0001')); IS_IPV6(BINARY('0000:0000:0000:0000:0000:0000:0000:0001')) 1 # -- Checking IS_IPV4_MAPPED() and IS_IPV4_COMPAT()... SELECT IS_IPV4_MAPPED(INET6_ATON('1.2.3.4')), IS_IPV4_COMPAT(INET6_ATON('1.2.3.4')); IS_IPV4_MAPPED(INET6_ATON('1.2.3.4')) IS_IPV4_COMPAT(INET6_ATON('1.2.3.4')) 0 0 SELECT IS_IPV4_MAPPED(INET6_ATON('::1.2.3.4')), IS_IPV4_COMPAT(INET6_ATON('::1.2.3.4')); IS_IPV4_MAPPED(INET6_ATON('::1.2.3.4')) IS_IPV4_COMPAT(INET6_ATON('::1.2.3.4')) 0 1 SELECT IS_IPV4_MAPPED(INET6_ATON('::FFFF:1.2.3.4')), IS_IPV4_COMPAT(INET6_ATON('::FFFF:1.2.3.4')); IS_IPV4_MAPPED(INET6_ATON('::FFFF:1.2.3.4')) IS_IPV4_COMPAT(INET6_ATON('::FFFF:1.2.3.4')) 1 0 SELECT IS_IPV4_MAPPED(INET6_ATON('::ABCD:1.2.3.4')), IS_IPV4_COMPAT(INET6_ATON('::ABCD:1.2.3.4')); IS_IPV4_MAPPED(INET6_ATON('::ABCD:1.2.3.4')) IS_IPV4_COMPAT(INET6_ATON('::ABCD:1.2.3.4')) 0 0 SELECT IS_IPV4_MAPPED(INET6_ATON('::1')), IS_IPV4_COMPAT(INET6_ATON('::1')); IS_IPV4_MAPPED(INET6_ATON('::1')) IS_IPV4_COMPAT(INET6_ATON('::1')) 0 0 SELECT IS_IPV4_MAPPED(INET6_ATON('::')), IS_IPV4_COMPAT(INET6_ATON('::')); IS_IPV4_MAPPED(INET6_ATON('::')) IS_IPV4_COMPAT(INET6_ATON('::')) 0 0 # -- Checking IS_IPV4_COMPAT()... # -- Working with a table... DROP TABLE IF EXISTS t1; DROP TABLE IF EXISTS t2; CREATE TABLE t1(ip INT UNSIGNED); CREATE TABLE t2(ip VARBINARY(16)); INSERT INTO t1 VALUES (INET_ATON('1.2.3.4')), (INET_ATON('255.255.255.255')); SELECT INET_NTOA(ip) FROM t1; INET_NTOA(ip) 1.2.3.4 255.255.255.255 INSERT INTO t2 SELECT INET6_ATON(INET_NTOA(ip)) FROM t1; SELECT INET6_NTOA(ip), HEX(ip), LENGTH(ip) FROM t2; INET6_NTOA(ip) HEX(ip) LENGTH(ip) 1.2.3.4 01020304 4 255.255.255.255 FFFFFFFF 4 DELETE FROM t2; INSERT INTO t2 VALUES (INET6_ATON('1.2.3.4')), (INET6_ATON('255.255.255.255')), (INET6_ATON('::1.2.3.4')), (INET6_ATON('::ffff:255.255.255.255')), (INET6_ATON('::')), (INET6_ATON('::1')), (INET6_ATON('1020:3040:5060:7080:90A0:B0C0:D0E0:F010')); SELECT INET6_NTOA(ip), HEX(ip), LENGTH(ip) FROM t2; INET6_NTOA(ip) HEX(ip) LENGTH(ip) 1.2.3.4 01020304 4 255.255.255.255 FFFFFFFF 4 ::1.2.3.4 00000000000000000000000001020304 16 ::ffff:255.255.255.255 00000000000000000000FFFFFFFFFFFF 16 :: 00000000000000000000000000000000 16 ::1 00000000000000000000000000000001 16 1020:3040:5060:7080:90a0:b0c0:d0e0:f010 102030405060708090A0B0C0D0E0F010 16 DELETE FROM t2; INSERT INTO t2 VALUES (INET6_ATON('1.0002.3.4')); Warnings: Warning 1411 Incorrect string value: ''1.0002.3.4'' for function inet6_aton INSERT INTO t2 VALUES (INET6_ATON('1.2.255')); Warnings: Warning 1411 Incorrect string value: ''1.2.255'' for function inet6_aton INSERT INTO t2 VALUES (INET6_ATON('1.2.256')); Warnings: Warning 1411 Incorrect string value: ''1.2.256'' for function inet6_aton INSERT INTO t2 VALUES (INET6_ATON('192.168.0x8.2')); Warnings: Warning 1411 Incorrect string value: ''192.168.0x8.2'' for function inet6_aton INSERT INTO t2 VALUES (inet_aton("122.256")); Warnings: Warning 1411 Incorrect string value: ''122.256'' for function inet_aton INSERT INTO t2 VALUES (inet_aton("122.226.")); Warnings: Warning 1411 Incorrect string value: ''122.226.'' for function inet_aton INSERT INTO t2 VALUES (inet_aton("")); Warnings: Warning 1411 Incorrect string value: '''' for function inet_aton INSERT INTO t2 VALUES (UNHEX('Z0Q80F02')); Warnings: Warning 1411 Incorrect string value: ''Z0Q80F02'' for function unhex SELECT INET6_NTOA(ip), HEX(ip), LENGTH(ip) FROM t2; INET6_NTOA(ip) HEX(ip) LENGTH(ip) NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL DELETE FROM t2; SET sql_mode = default; INSERT INTO t2 VALUES (INET6_ATON('1.0002.3.4')); ERROR HY000: Incorrect string value: ''1.0002.3.4'' for function inet6_aton INSERT INTO t2 VALUES (INET6_ATON('1.2.255')); ERROR HY000: Incorrect string value: ''1.2.255'' for function inet6_aton INSERT INTO t2 VALUES (INET6_ATON('1.2.256')); ERROR HY000: Incorrect string value: ''1.2.256'' for function inet6_aton INSERT INTO t2 VALUES (INET6_ATON('192.168.0x8.2')); ERROR HY000: Incorrect string value: ''192.168.0x8.2'' for function inet6_aton INSERT INTO t2 VALUES (inet_aton("122.256")); ERROR HY000: Incorrect string value: ''122.256'' for function inet_aton INSERT INTO t2 VALUES (inet_aton("122.226.")); ERROR HY000: Incorrect string value: ''122.226.'' for function inet_aton INSERT INTO t2 VALUES (inet_aton("")); ERROR HY000: Incorrect string value: '''' for function inet_aton INSERT INTO t2 VALUES (UNHEX('Z0Q80F02')); ERROR HY000: Incorrect string value: ''Z0Q80F02'' for function unhex SELECT INET6_NTOA(ip), HEX(ip), LENGTH(ip) FROM t2; INET6_NTOA(ip) HEX(ip) LENGTH(ip) DROP TABLE t1; DROP TABLE t2; # # Bug#22071558 INET_ATON ACCEPTS MORE THAN FOUR GROUPS OF DIGITS AND RETURNS INT BIGGER THAN 4G # select inet_aton("0.255.255.255.255"); inet_aton("0.255.255.255.255") NULL Warnings: Warning 1411 Incorrect string value: ''0.255.255.255.255'' for function inet_aton select inet_aton("255.255.255.2551"); inet_aton("255.255.255.2551") NULL Warnings: Warning 1411 Incorrect string value: ''255.255.255.2551'' for function inet_aton # # Bug #26319675:"ILLEGAL MIX OF COLLATIONS" HAPPENS IN CONCAT WITH # NAME_CONST # SELECT CONCAT(NAME_CONST('char_col',_cp932'test' COLLATE 'cp932_japanese_ci'), NAME_CONST('num_col',0)) AS a; a test0 CREATE TABLE t1 AS SELECT CONCAT(NAME_CONST('char_col',_cp932'test' COLLATE 'cp932_japanese_ci'), NAME_CONST('num_col',0)) AS a; SHOW CREATE TABLE t1; Table Create Table t1 CREATE TABLE `t1` ( `a` varchar(5) CHARACTER SET cp932 DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1 DROP TABLE t1; # -- Done. # # End of tests #