PATH=/usr/bin:/bin:/Users/fly1600/cpanfly-5.16/var/megalib/bin Start 2016-04-08T03:18:19 ActivePerl-1600 CPAN-2.10 Reading '/Users/fly1600/cpanfly-5.16/var/cpan/Metadata' Database was generated on Thu, 07 Apr 2016 05:53:40 GMT Fetching with LWP: http://ppm.activestate.com/CPAN/authors/id/R/RE/REHSACK/SQL-Statement-1.409.tar.gz Fetching with LWP: http://ppm.activestate.com/CPAN/authors/id/R/RE/REHSACK/CHECKSUMS Checksum for /Users/fly1600/cpanfly-5.16/var/cpan/sources/authors/id/R/RE/REHSACK/SQL-Statement-1.409.tar.gz ok SQL-Statement-1.409/ SQL-Statement-1.409/ARTISTIC-1.0 SQL-Statement-1.409/Changes SQL-Statement-1.409/GPL-1 SQL-Statement-1.409/GPL-2.0 SQL-Statement-1.409/lib/ SQL-Statement-1.409/LICENSE SQL-Statement-1.409/Makefile.PL SQL-Statement-1.409/MANIFEST SQL-Statement-1.409/MANIFEST.SKIP SQL-Statement-1.409/META.json SQL-Statement-1.409/META.yml SQL-Statement-1.409/README SQL-Statement-1.409/README.md SQL-Statement-1.409/t/ SQL-Statement-1.409/t/00error.t SQL-Statement-1.409/t/01prepare.t SQL-Statement-1.409/t/02execute.t SQL-Statement-1.409/t/03import.t SQL-Statement-1.409/t/04idents.t SQL-Statement-1.409/t/05simple.t SQL-Statement-1.409/t/06virtual.t SQL-Statement-1.409/t/08join.t SQL-Statement-1.409/t/09ops.t SQL-Statement-1.409/t/10limit.t SQL-Statement-1.409/t/12eval.t SQL-Statement-1.409/t/14parse.t SQL-Statement-1.409/t/17quoting.t SQL-Statement-1.409/t/23dialects.t SQL-Statement-1.409/t/SQLtest.pm SQL-Statement-1.409/t/TestLib.pm SQL-Statement-1.409/lib/SQL/ SQL-Statement-1.409/lib/SQL/Dialects/ SQL-Statement-1.409/lib/SQL/Eval.pm SQL-Statement-1.409/lib/SQL/Parser.pm SQL-Statement-1.409/lib/SQL/Statement/ SQL-Statement-1.409/lib/SQL/Statement.pm SQL-Statement-1.409/lib/SQL/Statement/Embed.pod SQL-Statement-1.409/lib/SQL/Statement/Function.pm SQL-Statement-1.409/lib/SQL/Statement/Functions.pm SQL-Statement-1.409/lib/SQL/Statement/GetInfo.pm SQL-Statement-1.409/lib/SQL/Statement/Operation.pm SQL-Statement-1.409/lib/SQL/Statement/Placeholder.pm SQL-Statement-1.409/lib/SQL/Statement/RAM.pm SQL-Statement-1.409/lib/SQL/Statement/Roadmap.pod SQL-Statement-1.409/lib/SQL/Statement/Structure.pod SQL-Statement-1.409/lib/SQL/Statement/Syntax.pod SQL-Statement-1.409/lib/SQL/Statement/Term.pm SQL-Statement-1.409/lib/SQL/Statement/TermFactory.pm SQL-Statement-1.409/lib/SQL/Statement/Util.pm SQL-Statement-1.409/lib/SQL/Dialects/ANSI.pm SQL-Statement-1.409/lib/SQL/Dialects/AnyData.pm SQL-Statement-1.409/lib/SQL/Dialects/CSV.pm SQL-Statement-1.409/lib/SQL/Dialects/Role.pm Configuring R/RE/REHSACK/SQL-Statement-1.409.tar.gz with Makefile.PL >>> /Users/fly1600/ap1600/bin/perl-dynamic Makefile.PL Checking if your kit is complete... Looks good Generating a Unix-style Makefile Writing Makefile for SQL::Statement Writing MYMETA.yml and MYMETA.json REHSACK/SQL-Statement-1.409.tar.gz /Users/fly1600/ap1600/bin/perl-dynamic Makefile.PL -- OK Running make for R/RE/REHSACK/SQL-Statement-1.409.tar.gz >>> make cp lib/SQL/Dialects/ANSI.pm blib/lib/SQL/Dialects/ANSI.pm cp lib/SQL/Statement/TermFactory.pm blib/lib/SQL/Statement/TermFactory.pm cp lib/SQL/Parser.pm blib/lib/SQL/Parser.pm cp lib/SQL/Statement/Util.pm blib/lib/SQL/Statement/Util.pm cp lib/SQL/Statement/Structure.pod blib/lib/SQL/Statement/Structure.pod cp lib/SQL/Statement/GetInfo.pm blib/lib/SQL/Statement/GetInfo.pm cp lib/SQL/Statement/Term.pm blib/lib/SQL/Statement/Term.pm cp lib/SQL/Statement/Syntax.pod blib/lib/SQL/Statement/Syntax.pod cp lib/SQL/Dialects/Role.pm blib/lib/SQL/Dialects/Role.pm cp lib/SQL/Dialects/AnyData.pm blib/lib/SQL/Dialects/AnyData.pm cp lib/SQL/Statement/RAM.pm blib/lib/SQL/Statement/RAM.pm cp lib/SQL/Statement/Embed.pod blib/lib/SQL/Statement/Embed.pod cp lib/SQL/Statement/Placeholder.pm blib/lib/SQL/Statement/Placeholder.pm cp lib/SQL/Statement.pm blib/lib/SQL/Statement.pm cp lib/SQL/Dialects/CSV.pm blib/lib/SQL/Dialects/CSV.pm cp lib/SQL/Eval.pm blib/lib/SQL/Eval.pm cp lib/SQL/Statement/Operation.pm blib/lib/SQL/Statement/Operation.pm cp lib/SQL/Statement/Roadmap.pod blib/lib/SQL/Statement/Roadmap.pod cp lib/SQL/Statement/Function.pm blib/lib/SQL/Statement/Function.pm cp lib/SQL/Statement/Functions.pm blib/lib/SQL/Statement/Functions.pm Manifying 20 pod documents REHSACK/SQL-Statement-1.409.tar.gz make -- OK Running make test >>> make test TEST_VERBOSE=1 PERL_DL_NONLAZY=1 "/Users/fly1600/ap1600/bin/perl-dynamic" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib/lib', 'blib/arch')" t/*.t xt/*.t # # Using required: # # SQL::Statement: 1.409 # # Using recommended: # # DBD::CSV: 0.48 # # DBD::DBM: 0.08 # # DBD::File: 0.44 # # DBI: 1.634 t/00error.t ..... # Running tests for SQL::Statement ok 1 - Parse "Junk" RaiseError=0 (default) ok 2 - Execute function succeeded ok 3 - Execute function no errstr ok 4 - Execute RaiseError=0 ok 5 - Parse "Junk" RaiseError=1 ok 6 - Execute RaiseError=1 ok 7 - Execute "SELECT * FROM nonexistant" has errstr # Running tests for DBD::CSV ok 8 - Parse "Junk" RaiseError=0 (default) ok 9 - Execute function succeeded ok 10 - Execute function no errstr ok 11 - Execute RaiseError=0 ok 12 - Parse "Junk" RaiseError=1 ok 13 - Execute RaiseError=1 ok 14 - Execute "SELECT * FROM nonexistant" has errstr # Running tests for DBD::DBM ok 15 - Parse "Junk" RaiseError=0 (default) ok 16 - Execute function succeeded ok 17 - Execute function no errstr ok 18 - Execute RaiseError=0 ok 19 - Parse "Junk" RaiseError=1 ok 20 - Execute RaiseError=1 ok 21 - Execute "SELECT * FROM nonexistant" has errstr # Running tests for DBD::File ok 22 - Parse "Junk" RaiseError=0 (default) ok 23 - Execute function succeeded ok 24 - Execute function no errstr ok 25 - Execute RaiseError=0 ok 26 - Parse "Junk" RaiseError=1 ok 27 - Execute RaiseError=1 ok 28 - Execute "SELECT * FROM nonexistant" has errstr 1..28 ok t/01prepare.t ... ok 1 - parse ' /* DROP TABLE */' using SQL::Statement ok 2 - parse 'DROP TABLE foo' using SQL::Statement ok 3 - parse 'DROP TABLE foo CASCADE' using SQL::Statement ok 4 - parse 'DROP TABLE foo RESTRICT' using SQL::Statement ok 5 - parse ' /* DELETE */' using SQL::Statement ok 6 - parse 'DELETE FROM foo' using SQL::Statement ok 7 - parse 'DELETE FROM foo WHERE id < 7' using SQL::Statement ok 8 - parse ' /* UPDATE */' using SQL::Statement ok 9 - parse 'UPDATE foo SET bar = 7' using SQL::Statement ok 10 - parse 'UPDATE foo SET bar = 7 WHERE id > 7' using SQL::Statement ok 11 - parse ' /* INSERT */' using SQL::Statement ok 12 - parse 'INSERT INTO foo VALUES ( 'baz', 7, NULL )' using SQL::Statement ok 13 - parse 'INSERT INTO foo (col1,col2,col7) VALUES ( 'baz', 7, NULL )' using SQL::Statement ok 14 - parse 'INSERT INTO foo VALUES ( now(), trim(lower(user)), curdate-1 )' using SQL::Statement ok 15 - parse 'INSERT INTO foo VALUES ( 'smile :-),(-: twice)', ' \' ) ' )' using SQL::Statement ok 16 - parse 'INSERT INTO foo VALUES (1,'row'),(2,'rows')' using SQL::Statement ok 17 - parse ' /* CREATE TABLE */' using SQL::Statement ok 18 - parse 'CREATE TABLE foo ( id INT )' using SQL::Statement ok 19 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT)' using SQL::Statement ok 20 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT) ON COMMIT DELETE ROWS' using SQL::Statement ok 21 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT) ON COMMIT PRESERVE ROWS' using SQL::Statement ok 22 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT)' using SQL::Statement ok 23 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT) ON COMMIT DELETE ROWS' using SQL::Statement ok 24 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT) ON COMMIT PRESERVE ROWS' using SQL::Statement ok 25 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40) )' using SQL::Statement ok 26 - parse 'CREATE TABLE foo ( id INTEGER UNIQUE, phrase VARCHAR(40) UNIQUE )' using SQL::Statement ok 27 - parse 'CREATE TABLE foo ( id INTEGER PRIMARY KEY, phrase VARCHAR(40) UNIQUE )' using SQL::Statement ok 28 - parse 'CREATE TABLE foo ( id INTEGER PRIMARY KEY, phrase VARCHAR(40) NOT NULL )' using SQL::Statement ok 29 - parse 'CREATE TABLE foo ( id INTEGER NOT NULL, phrase VARCHAR(40) NOT NULL )' using SQL::Statement ok 30 - parse 'CREATE TABLE foo ( id INTEGER UNIQUE NOT NULL, phrase VARCHAR(40) )' using SQL::Statement ok 31 - parse 'CREATE TABLE foo ( phrase CHARACTER VARYING(255) )' using SQL::Statement ok 32 - parse 'CREATE TABLE foo ( phrase NUMERIC(4,6) )' using SQL::Statement ok 33 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40), CONSTRAINT "foo_pkey" PRIMARY KEY ( "id", "phrase" ), CONSTRAINT "foo_fkey" FOREIGN KEY ( "id" ) REFERENCES "bar" ( "bar_id" ))' using SQL::Statement ok 34 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40), PRIMARY KEY ( "id" ), FOREIGN KEY ("id", "phrase") REFERENCES "bar" ("id2", "phrase2"))' using SQL::Statement ok 35 - parse 'CREATE TABLE foo ( id INTEGER, phrase CHAR(255), phrase2 VARCHAR(40), CONSTRAINT "foo_pkey" PRIMARY KEY ( "id", phrase, "phrase2" ), CONSTRAINT "foo_fkey" FOREIGN KEY ("id", "phrase", "phrase2") REFERENCES "bar" ("id2", "phrase2", "phase10"))' using SQL::Statement ok 36 - parse ' /* JOINS */' using SQL::Statement ok 37 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL INNER JOIN zUpper' using SQL::Statement ok 38 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL LEFT JOIN zUpper' using SQL::Statement ok 39 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL RIGHT JOIN zUpper' using SQL::Statement ok 40 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL FULL JOIN zUpper' using SQL::Statement ok 41 - parse 'SELECT Lnum,Llet,Ulet FROM zLower INNER JOIN zUpper ON Lnum = Unum' using SQL::Statement ok 42 - parse 'SELECT Lnum,Llet,Ulet FROM zLower LEFT JOIN zUpper ON Lnum = Unum' using SQL::Statement ok 43 - parse 'SELECT Lnum,Llet,Ulet FROM zLower RIGHT JOIN zUpper ON Lnum = Unum' using SQL::Statement ok 44 - parse 'SELECT Lnum,Llet,Ulet FROM zLower FULL JOIN zUpper ON Lnum = Unum' using SQL::Statement ok 45 - parse 'SELECT Lnum,Llet,Ulet FROM zLower INNER JOIN zUpper USING(num)' using SQL::Statement ok 46 - parse 'SELECT Lnum,Llet,Ulet FROM zLower LEFT JOIN zUpper USING(num)' using SQL::Statement ok 47 - parse 'SELECT Lnum,Llet,Ulet FROM zLower RIGHT JOIN zUpper USING(num)' using SQL::Statement ok 48 - parse 'SELECT Lnum,Llet,Ulet FROM zLower FULL JOIN zUpper USING(num)' using SQL::Statement ok 49 - parse 'SELECT Lnum,Llet,Ulet FROM zLower,zUpper WHERE Lnum = Unum' using SQL::Statement ok 50 - parse 'SELECT * FROM zLower NATURAL INNER JOIN zUpper' using SQL::Statement ok 51 - parse 'SELECT * FROM zLower NATURAL LEFT JOIN zUpper' using SQL::Statement ok 52 - parse 'SELECT * FROM zLower NATURAL RIGHT JOIN zUpper' using SQL::Statement ok 53 - parse 'SELECT * FROM zLower NATURAL FULL JOIN zUpper' using SQL::Statement ok 54 - parse 'SELECT * FROM zLower INNER JOIN zUpper ON Lnum = Unum' using SQL::Statement ok 55 - parse 'SELECT * FROM zLower LEFT JOIN zUpper ON Lnum = Unum' using SQL::Statement ok 56 - parse 'SELECT * FROM zLower RIGHT JOIN zUpper ON Lnum = Unum' using SQL::Statement ok 57 - parse 'SELECT * FROM zLower FULL JOIN zUpper ON Lnum = Unum' using SQL::Statement ok 58 - parse 'SELECT * FROM zLower INNER JOIN zUpper USING(num)' using SQL::Statement ok 59 - parse 'SELECT * FROM zLower LEFT JOIN zUpper USING(num)' using SQL::Statement ok 60 - parse 'SELECT * FROM zLower RIGHT JOIN zUpper USING(num)' using SQL::Statement ok 61 - parse 'SELECT * FROM zLower FULL JOIN zUpper USING(num)' using SQL::Statement ok 62 - parse 'SELECT * FROM zLower,zUpper WHERE Lnum = Unum' using SQL::Statement ok 63 - parse ' /* SELECT COLUMNS */' using SQL::Statement ok 64 - parse 'SELECT id, phrase FROM foo' using SQL::Statement ok 65 - parse 'SELECT * FROM foo' using SQL::Statement ok 66 - parse 'SELECT DISTINCT * FROM foo' using SQL::Statement ok 67 - parse 'SELECT ALL * FROM foo' using SQL::Statement ok 68 - parse 'SELECT A.*,B.* FROM A,B WHERE A.id=B.id' using SQL::Statement ok 69 - parse ' /* SET FUNCTIONS */' using SQL::Statement ok 70 - parse 'SELECT MAX(foo) FROM bar' using SQL::Statement ok 71 - parse 'SELECT MIN(foo) FROM bar' using SQL::Statement ok 72 - parse 'SELECT AVG(foo) FROM bar' using SQL::Statement ok 73 - parse 'SELECT SUM(foo) FROM bar' using SQL::Statement ok 74 - parse 'SELECT COUNT(foo) FROM foo' using SQL::Statement ok 75 - parse 'SELECT COUNT(*) FROM foo' using SQL::Statement ok 76 - parse 'SELECT SUM(DISTINCT foo) FROM bar' using SQL::Statement ok 77 - parse 'SELECT SUM(ALL foo) FROM bar' using SQL::Statement ok 78 - parse ' /* ORDER BY */' using SQL::Statement ok 79 - parse 'SELECT * FROM foo ORDER BY bar' using SQL::Statement ok 80 - parse 'SELECT * FROM foo ORDER BY bar, baz' using SQL::Statement ok 81 - parse 'SELECT * FROM foo ORDER BY bar DESC' using SQL::Statement ok 82 - parse 'SELECT * FROM foo ORDER BY bar ASC' using SQL::Statement ok 83 - parse ' /* LIMIT */' using SQL::Statement ok 84 - parse 'SELECT * FROM foo LIMIT 5' using SQL::Statement ok 85 - parse 'SELECT * FROM foo LIMIT 0, 5' using SQL::Statement ok 86 - parse 'SELECT * FROM foo LIMIT 5, 10' using SQL::Statement ok 87 - parse '/* DATE/TIME FUNCTIONS */' using SQL::Statement ok 88 - parse 'SELECT CURRENT_DATE()' using SQL::Statement ok 89 - parse 'SELECT CURRENT_TIME()' using SQL::Statement ok 90 - parse 'SELECT CURRENT_TIMESTAMP()' using SQL::Statement ok 91 - parse 'SELECT CURDATE()' using SQL::Statement ok 92 - parse 'SELECT CURTIME()' using SQL::Statement ok 93 - parse 'SELECT NOW()' using SQL::Statement ok 94 - parse 'SELECT UNIX_TIMESTAMP() ' using SQL::Statement ok 95 - parse 'SELECT CURRENT_TIME(2)' using SQL::Statement ok 96 - parse 'SELECT CURRENT_TIMESTAMP(2)' using SQL::Statement ok 97 - parse 'SELECT CURTIME(2)' using SQL::Statement ok 98 - parse 'SELECT NOW(2)' using SQL::Statement ok 99 - parse 'SELECT UNIX_TIMESTAMP(2)' using SQL::Statement ok 100 - parse ' /* STRING FUNCTIONS */' using SQL::Statement ok 101 - parse 'SELECT * FROM foo WHERE ASCII(status) = 65' using SQL::Statement ok 102 - parse 'SELECT * FROM foo WHERE CHAR(code) = 'A'' using SQL::Statement ok 103 - parse 'SELECT * FROM foo WHERE CHAR(chr1,chr2,chr3) = 'ABC'' using SQL::Statement ok 104 - parse 'SELECT * FROM foo WHERE BIT_LENGTH(str) = 27' using SQL::Statement ok 105 - parse 'SELECT * FROM foo WHERE CHARACTER_LENGTH(str) = 6' using SQL::Statement ok 106 - parse 'SELECT * FROM foo WHERE CHAR_LENGTH(str) = 6' using SQL::Statement ok 107 - parse 'SELECT * FROM foo WHERE COALESCE(NULL, status) = 'bar'' using SQL::Statement ok 108 - parse 'SELECT * FROM foo WHERE NVL(NULL, status) = 'bar'' using SQL::Statement ok 109 - parse 'SELECT * FROM foo WHERE IFNULL(NULL, status) = 'bar'' using SQL::Statement ok 110 - parse 'SELECT * FROM foo WHERE CONCAT(str1, str2) = 'bar'' using SQL::Statement ok 111 - parse 'SELECT * FROM foo WHERE DECODE(color,'White','W','Red','R','B') = 'W'' using SQL::Statement ok 112 - parse 'SELECT * FROM foo WHERE INSERT(str1, 4, 5, str2) = 'foobarland'' using SQL::Statement ok 113 - parse 'SELECT * FROM foo WHERE LEFT(phrase) = 'bar'' using SQL::Statement ok 114 - parse 'SELECT * FROM foo WHERE RIGHT(phrase) = 'bar'' using SQL::Statement ok 115 - parse 'SELECT * FROM foo WHERE LOCATE(str1, str2) = 2' using SQL::Statement ok 116 - parse 'SELECT * FROM foo WHERE LOCATE(str1, str2, 3) = 5' using SQL::Statement ok 117 - parse 'SELECT * FROM foo WHERE POSITION(str1, str2) = 2' using SQL::Statement ok 118 - parse 'SELECT * FROM foo WHERE POSITION(str1, str2, 3) = 5' using SQL::Statement ok 119 - parse 'SELECT * FROM foo WHERE LOWER(phrase) = 'bar'' using SQL::Statement ok 120 - parse 'SELECT * FROM foo WHERE UPPER(phrase) = 'BAR'' using SQL::Statement ok 121 - parse 'SELECT * FROM foo WHERE LCASE(phrase) = 'BAR'' using SQL::Statement ok 122 - parse 'SELECT * FROM foo WHERE UCASE(phrase) = 'bar'' using SQL::Statement ok 123 - parse 'SELECT * FROM foo WHERE LTRIM(str) = 'bar'' using SQL::Statement ok 124 - parse 'SELECT * FROM foo WHERE RTRIM(str) = 'bar'' using SQL::Statement ok 125 - parse 'SELECT * FROM foo WHERE OCTET_LENGTH(str) = 12' using SQL::Statement ok 126 - parse 'SELECT * FROM foo WHERE REGEX(phrase, '/EF/i') = TRUE' using SQL::Statement ok 127 - parse 'SELECT * FROM foo WHERE REPEAT(status, 3) = 'AAA'' using SQL::Statement ok 128 - parse 'SELECT * FROM foo WHERE REPLACE(phrase, 's/z(.+)ky//i') = 'bar'' using SQL::Statement ok 129 - parse 'SELECT * FROM foo WHERE SUBSTITUTE(phrase, 's/z(.+)ky//i') = 'bar'' using SQL::Statement ok 130 - parse 'SELECT * FROM foo WHERE SOUNDEX(name1, name2) = TRUE' using SQL::Statement ok 131 - parse 'SELECT * FROM foo WHERE SPACE(num) = ' '' using SQL::Statement ok 132 - parse 'SELECT * FROM foo WHERE blat = SUBSTRING(bar FROM 3 FOR 6)' using SQL::Statement ok 133 - parse 'SELECT * FROM foo WHERE blat = SUBSTRING(bar FROM 3)' using SQL::Statement ok 134 - parse 'SELECT * FROM foo WHERE blat = SUBSTR(bar, 3, 6)' using SQL::Statement ok 135 - parse 'SELECT * FROM foo WHERE blat = SUBSTR(bar, 3)' using SQL::Statement ok 136 - parse 'SELECT * FROM foo WHERE blat = TRANSLATE(bar, set1, set2)' using SQL::Statement ok 137 - parse 'SELECT * FROM foo WHERE TRIM( str ) = 'bar'' using SQL::Statement ok 138 - parse 'SELECT * FROM foo WHERE TRIM( LEADING FROM str ) = 'bar'' using SQL::Statement ok 139 - parse 'SELECT * FROM foo WHERE TRIM( TRAILING FROM str ) = 'bar'' using SQL::Statement ok 140 - parse 'SELECT * FROM foo WHERE TRIM( BOTH FROM str ) = 'bar'' using SQL::Statement ok 141 - parse 'SELECT * FROM foo WHERE TRIM( LEADING ';' FROM str ) = 'bar'' using SQL::Statement ok 142 - parse 'SELECT * FROM foo WHERE TRIM( UPPER(phrase) ) = 'bar'' using SQL::Statement ok 143 - parse 'SELECT * FROM foo WHERE TRIM( LOWER(phrase) ) = 'bar'' using SQL::Statement ok 144 - parse 'UPDATE foo SET bar='baz', bop=7, bump=bar+8, blat=SUBSTRING(bar FROM 3 FOR 6)' using SQL::Statement ok 145 - parse ' /* NUMERIC FUNCTIONS */' using SQL::Statement ok 146 - parse 'SELECT * FROM bar WHERE ABS(-4) = 4' using SQL::Statement ok 147 - parse 'SELECT * FROM bar WHERE CEILING(-4.5) = -4' using SQL::Statement ok 148 - parse 'SELECT * FROM bar WHERE CEIL(-4.9) = -4' using SQL::Statement ok 149 - parse 'SELECT * FROM bar WHERE FLOOR(4.999999999999) = 4' using SQL::Statement ok 150 - parse 'SELECT * FROM bar WHERE LOG(6) = LOG10(6)' using SQL::Statement ok 151 - parse 'SELECT * FROM bar WHERE LN(1) = EXP(1)' using SQL::Statement ok 152 - parse 'SELECT * FROM bar WHERE MOD(8, 5) = 3' using SQL::Statement ok 153 - parse 'SELECT * FROM bar WHERE POWER(2, 4) = 16' using SQL::Statement ok 154 - parse 'SELECT * FROM bar WHERE POW(2, 4) = 16' using SQL::Statement ok 155 - parse 'SELECT * FROM bar WHERE RAND(2) = 0' using SQL::Statement ok 156 - parse 'SELECT * FROM bar WHERE RAND(2, UNIX_TIMESTAMP()) = 0' using SQL::Statement ok 157 - parse 'SELECT * FROM bar WHERE ROUND(4.999999999999) = 5' using SQL::Statement ok 158 - parse 'SELECT * FROM bar WHERE ROUND(4.542222222222, 1) = 4.5' using SQL::Statement ok 159 - parse 'SELECT * FROM bar WHERE SIGN(-25.5) = -1' using SQL::Statement ok 160 - parse 'SELECT * FROM bar WHERE SIGN(53645) = 1' using SQL::Statement ok 161 - parse 'SELECT * FROM bar WHERE SIGN(0) = 0' using SQL::Statement ok 162 - parse 'SELECT * FROM bar WHERE SIGN(NULL) = NULL' using SQL::Statement ok 163 - parse 'SELECT * FROM bar WHERE SQRT(64) = 8' using SQL::Statement ok 164 - parse 'SELECT * FROM bar WHERE TRUNCATE(4.999999999999) = 4' using SQL::Statement ok 165 - parse 'SELECT * FROM bar WHERE TRUNC(-4.9) = -4' using SQL::Statement ok 166 - parse 'SELECT * FROM bar WHERE TRUNCATE(4.934, 1) = 4.9' using SQL::Statement ok 167 - parse 'SELECT * FROM bar WHERE TRUNC(-4.99999, 1) = -4.9' using SQL::Statement ok 168 - parse ' /* TRIGONOMETRIC FUNCTIONS */' using SQL::Statement ok 169 - parse 'SELECT * FROM test WHERE ACOS(x)' using SQL::Statement ok 170 - parse 'SELECT * FROM test WHERE ACOSEC(x)' using SQL::Statement ok 171 - parse 'SELECT * FROM test WHERE ACOSECH(x)' using SQL::Statement ok 172 - parse 'SELECT * FROM test WHERE ACOSH(x)' using SQL::Statement ok 173 - parse 'SELECT * FROM test WHERE ACOT(x)' using SQL::Statement ok 174 - parse 'SELECT * FROM test WHERE ACOTAN(x)' using SQL::Statement ok 175 - parse 'SELECT * FROM test WHERE ACOTANH(x)' using SQL::Statement ok 176 - parse 'SELECT * FROM test WHERE ACOTH(x)' using SQL::Statement ok 177 - parse 'SELECT * FROM test WHERE ACSC(x)' using SQL::Statement ok 178 - parse 'SELECT * FROM test WHERE ACSCH(x)' using SQL::Statement ok 179 - parse 'SELECT * FROM test WHERE ASEC(x)' using SQL::Statement ok 180 - parse 'SELECT * FROM test WHERE ASECH(x)' using SQL::Statement ok 181 - parse 'SELECT * FROM test WHERE ASIN(x)' using SQL::Statement ok 182 - parse 'SELECT * FROM test WHERE ASINH(x)' using SQL::Statement ok 183 - parse 'SELECT * FROM test WHERE ATAN(x)' using SQL::Statement ok 184 - parse 'SELECT * FROM test WHERE ATAN2(y, x)' using SQL::Statement ok 185 - parse 'SELECT * FROM test WHERE ATANH(x)' using SQL::Statement ok 186 - parse 'SELECT * FROM test WHERE COS(x)' using SQL::Statement ok 187 - parse 'SELECT * FROM test WHERE COSEC(x)' using SQL::Statement ok 188 - parse 'SELECT * FROM test WHERE COSECH(x)' using SQL::Statement ok 189 - parse 'SELECT * FROM test WHERE COSH(x)' using SQL::Statement ok 190 - parse 'SELECT * FROM test WHERE COT(x)' using SQL::Statement ok 191 - parse 'SELECT * FROM test WHERE COTAN(x)' using SQL::Statement ok 192 - parse 'SELECT * FROM test WHERE COTANH(x)' using SQL::Statement ok 193 - parse 'SELECT * FROM test WHERE COTH(x)' using SQL::Statement ok 194 - parse 'SELECT * FROM test WHERE CSC(x)' using SQL::Statement ok 195 - parse 'SELECT * FROM test WHERE CSCH(x)' using SQL::Statement ok 196 - parse 'SELECT * FROM test WHERE DEG2DEG(deg)' using SQL::Statement ok 197 - parse 'SELECT * FROM test WHERE RAD2RAD(rad)' using SQL::Statement ok 198 - parse 'SELECT * FROM test WHERE GRAD2GRAD(grad)' using SQL::Statement ok 199 - parse 'SELECT * FROM test WHERE DEG2GRAD(deg)' using SQL::Statement ok 200 - parse 'SELECT * FROM test WHERE DEG2RAD(deg)' using SQL::Statement ok 201 - parse 'SELECT * FROM test WHERE GRAD2DEG(grad)' using SQL::Statement ok 202 - parse 'SELECT * FROM test WHERE GRAD2RAD(grad)' using SQL::Statement ok 203 - parse 'SELECT * FROM test WHERE RAD2DEG(rad)' using SQL::Statement ok 204 - parse 'SELECT * FROM test WHERE RAD2GRAD(rad)' using SQL::Statement ok 205 - parse 'SELECT * FROM test WHERE DEGREES(rad)' using SQL::Statement ok 206 - parse 'SELECT * FROM test WHERE RADIANS(deg)' using SQL::Statement ok 207 - parse 'SELECT * FROM test WHERE DEG2DEG(deg, TRUE)' using SQL::Statement ok 208 - parse 'SELECT * FROM test WHERE RAD2RAD(rad, TRUE)' using SQL::Statement ok 209 - parse 'SELECT * FROM test WHERE GRAD2GRAD(grad, TRUE)' using SQL::Statement ok 210 - parse 'SELECT * FROM test WHERE DEG2GRAD(deg, TRUE)' using SQL::Statement ok 211 - parse 'SELECT * FROM test WHERE DEG2RAD(deg, TRUE)' using SQL::Statement ok 212 - parse 'SELECT * FROM test WHERE GRAD2DEG(grad, TRUE)' using SQL::Statement ok 213 - parse 'SELECT * FROM test WHERE GRAD2RAD(grad, TRUE)' using SQL::Statement ok 214 - parse 'SELECT * FROM test WHERE RAD2DEG(rad, TRUE)' using SQL::Statement ok 215 - parse 'SELECT * FROM test WHERE RAD2GRAD(rad, TRUE)' using SQL::Statement ok 216 - parse 'SELECT * FROM test WHERE DEGREES(rad, TRUE)' using SQL::Statement ok 217 - parse 'SELECT * FROM test WHERE RADIANS(deg, TRUE)' using SQL::Statement ok 218 - parse 'SELECT * FROM test WHERE PI()' using SQL::Statement ok 219 - parse 'SELECT * FROM test WHERE SEC(x)' using SQL::Statement ok 220 - parse 'SELECT * FROM test WHERE SECH(x)' using SQL::Statement ok 221 - parse 'SELECT * FROM test WHERE SIN(x)' using SQL::Statement ok 222 - parse 'SELECT * FROM test WHERE SINH(x)' using SQL::Statement ok 223 - parse 'SELECT * FROM test WHERE TAN(x)' using SQL::Statement ok 224 - parse 'SELECT * FROM test WHERE TANH(x)' using SQL::Statement ok 225 - parse ' /* SYSTEM FUNCTIONS */' using SQL::Statement ok 226 - parse 'SELECT * FROM ztable WHERE DBNAME() = foobar' using SQL::Statement ok 227 - parse 'SELECT * FROM ztable WHERE USERNAME() = foobar' using SQL::Statement ok 228 - parse 'SELECT * FROM ztable WHERE USER() = foobar' using SQL::Statement ok 229 - parse ' /* TABLE NAME ALIASES */' using SQL::Statement ok 230 - parse 'SELECT * FROM test as T1' using SQL::Statement ok 231 - parse 'SELECT * FROM test T1' using SQL::Statement ok 232 - parse 'SELECT T1.id, T2.num FROM test as T1 JOIN test2 as T2 USING(id)' using SQL::Statement ok 233 - parse 'SELECT id FROM test as T1 WHERE T1.num < 7' using SQL::Statement ok 234 - parse 'SELECT id FROM test as T1 ORDER BY T1.num' using SQL::Statement ok 235 - parse 'SELECT a.x,b.y FROM foo AS a, bar b WHERE a.baz = b.bop ORDER BY a.blat' using SQL::Statement ok 236 - parse ' /* NUMERIC EXPRESSIONS */' using SQL::Statement ok 237 - parse 'SELECT * FROM foo WHERE 1 = 0 AND baz < (6*foo+11-r)' using SQL::Statement ok 238 - parse ' /* CASE OF IDENTIFIERS */' using SQL::Statement ok 239 - parse 'SELECT ID, phRase FROM tEst AS tE WHERE te.id < 3 ORDER BY TE.phrasE' using SQL::Statement ok 240 - parse ' /* PARENS */' using SQL::Statement ok 241 - parse 'SELECT * FROM ztable WHERE NOT data IN ('one','two')' using SQL::Statement ok 242 - parse 'SELECT * from ztable WHERE (aaa > 'AAA')' using SQL::Statement ok 243 - parse 'SELECT * from ztable WHERE sev = 50 OR sev = 60' using SQL::Statement ok 244 - parse 'SELECT * from ztable WHERE (sev = 50 OR sev = 60)' using SQL::Statement ok 245 - parse 'SELECT * from ztable WHERE sev IN (50,60)' using SQL::Statement ok 246 - parse 'SELECT * from ztable WHERE rc > 200 AND ( sev IN(50,60) )' using SQL::Statement ok 247 - parse 'SELECT * FROM ztable WHERE data NOT IN ('one','two')' using SQL::Statement ok 248 - parse 'SELECT * from ztable WHERE (aaa > 'AAA') AND (zzz < 'ZZZ')' using SQL::Statement ok 249 - parse 'SELECT * from ztable WHERE (sev IN(50,60))' using SQL::Statement ok 250 - parse ' /* NOT */' using SQL::Statement ok 251 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND bop = 7 OR NOT blat = bar' using SQL::Statement ok 252 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND NOT bop = 7 OR NOT blat = bar' using SQL::Statement ok 253 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND NOT bop = 7 OR blat IS NOT NULL' using SQL::Statement ok 254 - parse ' /* IN */' using SQL::Statement ok 255 - parse 'SELECT * FROM bar WHERE foo IN ('aa','ab','ba','bb')' using SQL::Statement ok 256 - parse 'SELECT * FROM bar WHERE foo IN (3.14,2.72,1.41,9.81)' using SQL::Statement ok 257 - parse 'SELECT * FROM bar WHERE foo NOT IN ('aa','ab','ba','bb')' using SQL::Statement ok 258 - parse 'SELECT * FROM bar WHERE foo NOT IN (3.14,2.72,1.41,9.81)' using SQL::Statement ok 259 - parse ' /* BETWEEN */' using SQL::Statement ok 260 - parse 'SELECT * FROM bar WHERE foo BETWEEN ('aa','bb')' using SQL::Statement ok 261 - parse 'SELECT * FROM bar WHERE foo BETWEEN (1.41,9.81)' using SQL::Statement ok 262 - parse 'SELECT * FROM bar WHERE foo NOT BETWEEN ('aa','bb')' using SQL::Statement ok 263 - parse 'SELECT * FROM bar WHERE foo NOT BETWEEN (1.41,9.81)' using SQL::Statement not ok 264 - parse 'UPDATE foo SET bar=REPEAT(status, BIT_LENGTH(str)), bop=7, bump=bar+POSITION(str1, str2), blat=SUBSTRING(bar FROM ASCII(status) FOR CHAR_LENGTH(str))' using SQL::Statement # TODO Analyze failures # Failed (TODO) test 'parse 'UPDATE foo SET bar=REPEAT(status, BIT_LENGTH(str)), bop=7, bump=bar+POSITION(str1, str2), blat=SUBSTRING(bar FROM ASCII(status) FOR CHAR_LENGTH(str))' using SQL::Statement' # at t/01prepare.t line 312. # Incomplete SET clause! not ok 265 - parse 'SELECT * FROM bar WHERE EXP(1) = SINH(1)+COSH(1)' using SQL::Statement # TODO Analyze failures # Failed (TODO) test 'parse 'SELECT * FROM bar WHERE EXP(1) = SINH(1)+COSH(1)' using SQL::Statement' # at t/01prepare.t line 312. # # Execution ERROR: Unknown predicate '{$VAR1 = {}; # }' called from t/TestLib.pm at 190. # not ok 266 - parse 'SELECT * FROM bar WHERE LOG(8, 2) = LOG10(8) / LOG10(2)' using SQL::Statement # TODO Analyze failures # Failed (TODO) test 'parse 'SELECT * FROM bar WHERE LOG(8, 2) = LOG10(8) / LOG10(2)' using SQL::Statement' # at t/01prepare.t line 312. # # Execution ERROR: Unknown predicate '{$VAR1 = {}; # }' called from t/TestLib.pm at 190. # ok 267 - $sth->new ok 268 - $sth->command ok 269 - $sth->params ok 270 - $sth->tables ok 271 - $sth->where()->op ok 272 - $sth->where()->left ok 273 - $sth->where()->left->left ok 274 - $sth->where()->left->right ok 275 - $sth->limit ok 276 - $sth->offset # Command SELECT # Num Pholders 1 # Columns # Tables SQL::Statement::Table=HASH(0x100bebeb8),SQL::Statement::Table=HASH(0x100c2c708) # Where op AND # Limit 2 # Offset 5 # Order Cols f,g ok 277 - $stmt->row_values() ok 278 - $stmt->row_values(0) ok 279 - $stmt->row_values(0,1) ok 280 - structure ok 281 - command ok 282 - distinct ok 283 - parse ' /* DROP TABLE */' using DBD::CSV ok 284 - parse 'DROP TABLE foo' using DBD::CSV ok 285 - parse 'DROP TABLE foo CASCADE' using DBD::CSV ok 286 - parse 'DROP TABLE foo RESTRICT' using DBD::CSV ok 287 - parse ' /* DELETE */' using DBD::CSV ok 288 - parse 'DELETE FROM foo' using DBD::CSV ok 289 - parse 'DELETE FROM foo WHERE id < 7' using DBD::CSV ok 290 - parse ' /* UPDATE */' using DBD::CSV ok 291 - parse 'UPDATE foo SET bar = 7' using DBD::CSV ok 292 - parse 'UPDATE foo SET bar = 7 WHERE id > 7' using DBD::CSV ok 293 - parse ' /* INSERT */' using DBD::CSV ok 294 - parse 'INSERT INTO foo VALUES ( 'baz', 7, NULL )' using DBD::CSV ok 295 - parse 'INSERT INTO foo (col1,col2,col7) VALUES ( 'baz', 7, NULL )' using DBD::CSV ok 296 - parse 'INSERT INTO foo VALUES ( now(), trim(lower(user)), curdate-1 )' using DBD::CSV ok 297 - parse 'INSERT INTO foo VALUES ( 'smile :-),(-: twice)', ' \' ) ' )' using DBD::CSV ok 298 - parse 'INSERT INTO foo VALUES (1,'row'),(2,'rows')' using DBD::CSV ok 299 - parse ' /* CREATE TABLE */' using DBD::CSV ok 300 - parse 'CREATE TABLE foo ( id INT )' using DBD::CSV ok 301 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT)' using DBD::CSV ok 302 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT) ON COMMIT DELETE ROWS' using DBD::CSV ok 303 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT) ON COMMIT PRESERVE ROWS' using DBD::CSV ok 304 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT)' using DBD::CSV ok 305 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT) ON COMMIT DELETE ROWS' using DBD::CSV ok 306 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT) ON COMMIT PRESERVE ROWS' using DBD::CSV ok 307 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40) )' using DBD::CSV ok 308 - parse 'CREATE TABLE foo ( id INTEGER UNIQUE, phrase VARCHAR(40) UNIQUE )' using DBD::CSV ok 309 - parse 'CREATE TABLE foo ( id INTEGER PRIMARY KEY, phrase VARCHAR(40) UNIQUE )' using DBD::CSV ok 310 - parse 'CREATE TABLE foo ( id INTEGER PRIMARY KEY, phrase VARCHAR(40) NOT NULL )' using DBD::CSV ok 311 - parse 'CREATE TABLE foo ( id INTEGER NOT NULL, phrase VARCHAR(40) NOT NULL )' using DBD::CSV ok 312 - parse 'CREATE TABLE foo ( id INTEGER UNIQUE NOT NULL, phrase VARCHAR(40) )' using DBD::CSV ok 313 - parse 'CREATE TABLE foo ( phrase CHARACTER VARYING(255) )' using DBD::CSV ok 314 - parse 'CREATE TABLE foo ( phrase NUMERIC(4,6) )' using DBD::CSV ok 315 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40), CONSTRAINT "foo_pkey" PRIMARY KEY ( "id", "phrase" ), CONSTRAINT "foo_fkey" FOREIGN KEY ( "id" ) REFERENCES "bar" ( "bar_id" ))' using DBD::CSV ok 316 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40), PRIMARY KEY ( "id" ), FOREIGN KEY ("id", "phrase") REFERENCES "bar" ("id2", "phrase2"))' using DBD::CSV ok 317 - parse 'CREATE TABLE foo ( id INTEGER, phrase CHAR(255), phrase2 VARCHAR(40), CONSTRAINT "foo_pkey" PRIMARY KEY ( "id", phrase, "phrase2" ), CONSTRAINT "foo_fkey" FOREIGN KEY ("id", "phrase", "phrase2") REFERENCES "bar" ("id2", "phrase2", "phase10"))' using DBD::CSV ok 318 - parse ' /* JOINS */' using DBD::CSV ok 319 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL INNER JOIN zUpper' using DBD::CSV ok 320 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL LEFT JOIN zUpper' using DBD::CSV ok 321 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL RIGHT JOIN zUpper' using DBD::CSV ok 322 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL FULL JOIN zUpper' using DBD::CSV ok 323 - parse 'SELECT Lnum,Llet,Ulet FROM zLower INNER JOIN zUpper ON Lnum = Unum' using DBD::CSV ok 324 - parse 'SELECT Lnum,Llet,Ulet FROM zLower LEFT JOIN zUpper ON Lnum = Unum' using DBD::CSV ok 325 - parse 'SELECT Lnum,Llet,Ulet FROM zLower RIGHT JOIN zUpper ON Lnum = Unum' using DBD::CSV ok 326 - parse 'SELECT Lnum,Llet,Ulet FROM zLower FULL JOIN zUpper ON Lnum = Unum' using DBD::CSV ok 327 - parse 'SELECT Lnum,Llet,Ulet FROM zLower INNER JOIN zUpper USING(num)' using DBD::CSV ok 328 - parse 'SELECT Lnum,Llet,Ulet FROM zLower LEFT JOIN zUpper USING(num)' using DBD::CSV ok 329 - parse 'SELECT Lnum,Llet,Ulet FROM zLower RIGHT JOIN zUpper USING(num)' using DBD::CSV ok 330 - parse 'SELECT Lnum,Llet,Ulet FROM zLower FULL JOIN zUpper USING(num)' using DBD::CSV ok 331 - parse 'SELECT Lnum,Llet,Ulet FROM zLower,zUpper WHERE Lnum = Unum' using DBD::CSV ok 332 - parse 'SELECT * FROM zLower NATURAL INNER JOIN zUpper' using DBD::CSV ok 333 - parse 'SELECT * FROM zLower NATURAL LEFT JOIN zUpper' using DBD::CSV ok 334 - parse 'SELECT * FROM zLower NATURAL RIGHT JOIN zUpper' using DBD::CSV ok 335 - parse 'SELECT * FROM zLower NATURAL FULL JOIN zUpper' using DBD::CSV ok 336 - parse 'SELECT * FROM zLower INNER JOIN zUpper ON Lnum = Unum' using DBD::CSV ok 337 - parse 'SELECT * FROM zLower LEFT JOIN zUpper ON Lnum = Unum' using DBD::CSV ok 338 - parse 'SELECT * FROM zLower RIGHT JOIN zUpper ON Lnum = Unum' using DBD::CSV ok 339 - parse 'SELECT * FROM zLower FULL JOIN zUpper ON Lnum = Unum' using DBD::CSV ok 340 - parse 'SELECT * FROM zLower INNER JOIN zUpper USING(num)' using DBD::CSV ok 341 - parse 'SELECT * FROM zLower LEFT JOIN zUpper USING(num)' using DBD::CSV ok 342 - parse 'SELECT * FROM zLower RIGHT JOIN zUpper USING(num)' using DBD::CSV ok 343 - parse 'SELECT * FROM zLower FULL JOIN zUpper USING(num)' using DBD::CSV ok 344 - parse 'SELECT * FROM zLower,zUpper WHERE Lnum = Unum' using DBD::CSV ok 345 - parse ' /* SELECT COLUMNS */' using DBD::CSV ok 346 - parse 'SELECT id, phrase FROM foo' using DBD::CSV ok 347 - parse 'SELECT * FROM foo' using DBD::CSV ok 348 - parse 'SELECT DISTINCT * FROM foo' using DBD::CSV ok 349 - parse 'SELECT ALL * FROM foo' using DBD::CSV ok 350 - parse 'SELECT A.*,B.* FROM A,B WHERE A.id=B.id' using DBD::CSV ok 351 - parse ' /* SET FUNCTIONS */' using DBD::CSV ok 352 - parse 'SELECT MAX(foo) FROM bar' using DBD::CSV ok 353 - parse 'SELECT MIN(foo) FROM bar' using DBD::CSV ok 354 - parse 'SELECT AVG(foo) FROM bar' using DBD::CSV ok 355 - parse 'SELECT SUM(foo) FROM bar' using DBD::CSV ok 356 - parse 'SELECT COUNT(foo) FROM foo' using DBD::CSV ok 357 - parse 'SELECT COUNT(*) FROM foo' using DBD::CSV ok 358 - parse 'SELECT SUM(DISTINCT foo) FROM bar' using DBD::CSV ok 359 - parse 'SELECT SUM(ALL foo) FROM bar' using DBD::CSV ok 360 - parse ' /* ORDER BY */' using DBD::CSV ok 361 - parse 'SELECT * FROM foo ORDER BY bar' using DBD::CSV ok 362 - parse 'SELECT * FROM foo ORDER BY bar, baz' using DBD::CSV ok 363 - parse 'SELECT * FROM foo ORDER BY bar DESC' using DBD::CSV ok 364 - parse 'SELECT * FROM foo ORDER BY bar ASC' using DBD::CSV ok 365 - parse ' /* LIMIT */' using DBD::CSV ok 366 - parse 'SELECT * FROM foo LIMIT 5' using DBD::CSV ok 367 - parse 'SELECT * FROM foo LIMIT 0, 5' using DBD::CSV ok 368 - parse 'SELECT * FROM foo LIMIT 5, 10' using DBD::CSV ok 369 - parse '/* DATE/TIME FUNCTIONS */' using DBD::CSV ok 370 - parse 'SELECT CURRENT_DATE()' using DBD::CSV ok 371 - parse 'SELECT CURRENT_TIME()' using DBD::CSV ok 372 - parse 'SELECT CURRENT_TIMESTAMP()' using DBD::CSV ok 373 - parse 'SELECT CURDATE()' using DBD::CSV ok 374 - parse 'SELECT CURTIME()' using DBD::CSV ok 375 - parse 'SELECT NOW()' using DBD::CSV ok 376 - parse 'SELECT UNIX_TIMESTAMP() ' using DBD::CSV ok 377 - parse 'SELECT CURRENT_TIME(2)' using DBD::CSV ok 378 - parse 'SELECT CURRENT_TIMESTAMP(2)' using DBD::CSV ok 379 - parse 'SELECT CURTIME(2)' using DBD::CSV ok 380 - parse 'SELECT NOW(2)' using DBD::CSV ok 381 - parse 'SELECT UNIX_TIMESTAMP(2)' using DBD::CSV ok 382 - parse ' /* STRING FUNCTIONS */' using DBD::CSV ok 383 - parse 'SELECT * FROM foo WHERE ASCII(status) = 65' using DBD::CSV ok 384 - parse 'SELECT * FROM foo WHERE CHAR(code) = 'A'' using DBD::CSV ok 385 - parse 'SELECT * FROM foo WHERE CHAR(chr1,chr2,chr3) = 'ABC'' using DBD::CSV ok 386 - parse 'SELECT * FROM foo WHERE BIT_LENGTH(str) = 27' using DBD::CSV ok 387 - parse 'SELECT * FROM foo WHERE CHARACTER_LENGTH(str) = 6' using DBD::CSV ok 388 - parse 'SELECT * FROM foo WHERE CHAR_LENGTH(str) = 6' using DBD::CSV ok 389 - parse 'SELECT * FROM foo WHERE COALESCE(NULL, status) = 'bar'' using DBD::CSV ok 390 - parse 'SELECT * FROM foo WHERE NVL(NULL, status) = 'bar'' using DBD::CSV ok 391 - parse 'SELECT * FROM foo WHERE IFNULL(NULL, status) = 'bar'' using DBD::CSV ok 392 - parse 'SELECT * FROM foo WHERE CONCAT(str1, str2) = 'bar'' using DBD::CSV ok 393 - parse 'SELECT * FROM foo WHERE DECODE(color,'White','W','Red','R','B') = 'W'' using DBD::CSV ok 394 - parse 'SELECT * FROM foo WHERE INSERT(str1, 4, 5, str2) = 'foobarland'' using DBD::CSV ok 395 - parse 'SELECT * FROM foo WHERE LEFT(phrase) = 'bar'' using DBD::CSV ok 396 - parse 'SELECT * FROM foo WHERE RIGHT(phrase) = 'bar'' using DBD::CSV ok 397 - parse 'SELECT * FROM foo WHERE LOCATE(str1, str2) = 2' using DBD::CSV ok 398 - parse 'SELECT * FROM foo WHERE LOCATE(str1, str2, 3) = 5' using DBD::CSV ok 399 - parse 'SELECT * FROM foo WHERE POSITION(str1, str2) = 2' using DBD::CSV ok 400 - parse 'SELECT * FROM foo WHERE POSITION(str1, str2, 3) = 5' using DBD::CSV ok 401 - parse 'SELECT * FROM foo WHERE LOWER(phrase) = 'bar'' using DBD::CSV ok 402 - parse 'SELECT * FROM foo WHERE UPPER(phrase) = 'BAR'' using DBD::CSV ok 403 - parse 'SELECT * FROM foo WHERE LCASE(phrase) = 'BAR'' using DBD::CSV ok 404 - parse 'SELECT * FROM foo WHERE UCASE(phrase) = 'bar'' using DBD::CSV ok 405 - parse 'SELECT * FROM foo WHERE LTRIM(str) = 'bar'' using DBD::CSV ok 406 - parse 'SELECT * FROM foo WHERE RTRIM(str) = 'bar'' using DBD::CSV ok 407 - parse 'SELECT * FROM foo WHERE OCTET_LENGTH(str) = 12' using DBD::CSV ok 408 - parse 'SELECT * FROM foo WHERE REGEX(phrase, '/EF/i') = TRUE' using DBD::CSV ok 409 - parse 'SELECT * FROM foo WHERE REPEAT(status, 3) = 'AAA'' using DBD::CSV ok 410 - parse 'SELECT * FROM foo WHERE REPLACE(phrase, 's/z(.+)ky//i') = 'bar'' using DBD::CSV ok 411 - parse 'SELECT * FROM foo WHERE SUBSTITUTE(phrase, 's/z(.+)ky//i') = 'bar'' using DBD::CSV ok 412 - parse 'SELECT * FROM foo WHERE SOUNDEX(name1, name2) = TRUE' using DBD::CSV ok 413 - parse 'SELECT * FROM foo WHERE SPACE(num) = ' '' using DBD::CSV ok 414 - parse 'SELECT * FROM foo WHERE blat = SUBSTRING(bar FROM 3 FOR 6)' using DBD::CSV ok 415 - parse 'SELECT * FROM foo WHERE blat = SUBSTRING(bar FROM 3)' using DBD::CSV ok 416 - parse 'SELECT * FROM foo WHERE blat = SUBSTR(bar, 3, 6)' using DBD::CSV ok 417 - parse 'SELECT * FROM foo WHERE blat = SUBSTR(bar, 3)' using DBD::CSV ok 418 - parse 'SELECT * FROM foo WHERE blat = TRANSLATE(bar, set1, set2)' using DBD::CSV ok 419 - parse 'SELECT * FROM foo WHERE TRIM( str ) = 'bar'' using DBD::CSV ok 420 - parse 'SELECT * FROM foo WHERE TRIM( LEADING FROM str ) = 'bar'' using DBD::CSV ok 421 - parse 'SELECT * FROM foo WHERE TRIM( TRAILING FROM str ) = 'bar'' using DBD::CSV ok 422 - parse 'SELECT * FROM foo WHERE TRIM( BOTH FROM str ) = 'bar'' using DBD::CSV ok 423 - parse 'SELECT * FROM foo WHERE TRIM( LEADING ';' FROM str ) = 'bar'' using DBD::CSV ok 424 - parse 'SELECT * FROM foo WHERE TRIM( UPPER(phrase) ) = 'bar'' using DBD::CSV ok 425 - parse 'SELECT * FROM foo WHERE TRIM( LOWER(phrase) ) = 'bar'' using DBD::CSV ok 426 - parse 'UPDATE foo SET bar='baz', bop=7, bump=bar+8, blat=SUBSTRING(bar FROM 3 FOR 6)' using DBD::CSV ok 427 - parse ' /* NUMERIC FUNCTIONS */' using DBD::CSV ok 428 - parse 'SELECT * FROM bar WHERE ABS(-4) = 4' using DBD::CSV ok 429 - parse 'SELECT * FROM bar WHERE CEILING(-4.5) = -4' using DBD::CSV ok 430 - parse 'SELECT * FROM bar WHERE CEIL(-4.9) = -4' using DBD::CSV ok 431 - parse 'SELECT * FROM bar WHERE FLOOR(4.999999999999) = 4' using DBD::CSV ok 432 - parse 'SELECT * FROM bar WHERE LOG(6) = LOG10(6)' using DBD::CSV ok 433 - parse 'SELECT * FROM bar WHERE LN(1) = EXP(1)' using DBD::CSV ok 434 - parse 'SELECT * FROM bar WHERE MOD(8, 5) = 3' using DBD::CSV ok 435 - parse 'SELECT * FROM bar WHERE POWER(2, 4) = 16' using DBD::CSV ok 436 - parse 'SELECT * FROM bar WHERE POW(2, 4) = 16' using DBD::CSV ok 437 - parse 'SELECT * FROM bar WHERE RAND(2) = 0' using DBD::CSV ok 438 - parse 'SELECT * FROM bar WHERE RAND(2, UNIX_TIMESTAMP()) = 0' using DBD::CSV ok 439 - parse 'SELECT * FROM bar WHERE ROUND(4.999999999999) = 5' using DBD::CSV ok 440 - parse 'SELECT * FROM bar WHERE ROUND(4.542222222222, 1) = 4.5' using DBD::CSV ok 441 - parse 'SELECT * FROM bar WHERE SIGN(-25.5) = -1' using DBD::CSV ok 442 - parse 'SELECT * FROM bar WHERE SIGN(53645) = 1' using DBD::CSV ok 443 - parse 'SELECT * FROM bar WHERE SIGN(0) = 0' using DBD::CSV ok 444 - parse 'SELECT * FROM bar WHERE SIGN(NULL) = NULL' using DBD::CSV ok 445 - parse 'SELECT * FROM bar WHERE SQRT(64) = 8' using DBD::CSV ok 446 - parse 'SELECT * FROM bar WHERE TRUNCATE(4.999999999999) = 4' using DBD::CSV ok 447 - parse 'SELECT * FROM bar WHERE TRUNC(-4.9) = -4' using DBD::CSV ok 448 - parse 'SELECT * FROM bar WHERE TRUNCATE(4.934, 1) = 4.9' using DBD::CSV ok 449 - parse 'SELECT * FROM bar WHERE TRUNC(-4.99999, 1) = -4.9' using DBD::CSV ok 450 - parse ' /* TRIGONOMETRIC FUNCTIONS */' using DBD::CSV ok 451 - parse 'SELECT * FROM test WHERE ACOS(x)' using DBD::CSV ok 452 - parse 'SELECT * FROM test WHERE ACOSEC(x)' using DBD::CSV ok 453 - parse 'SELECT * FROM test WHERE ACOSECH(x)' using DBD::CSV ok 454 - parse 'SELECT * FROM test WHERE ACOSH(x)' using DBD::CSV ok 455 - parse 'SELECT * FROM test WHERE ACOT(x)' using DBD::CSV ok 456 - parse 'SELECT * FROM test WHERE ACOTAN(x)' using DBD::CSV ok 457 - parse 'SELECT * FROM test WHERE ACOTANH(x)' using DBD::CSV ok 458 - parse 'SELECT * FROM test WHERE ACOTH(x)' using DBD::CSV ok 459 - parse 'SELECT * FROM test WHERE ACSC(x)' using DBD::CSV ok 460 - parse 'SELECT * FROM test WHERE ACSCH(x)' using DBD::CSV ok 461 - parse 'SELECT * FROM test WHERE ASEC(x)' using DBD::CSV ok 462 - parse 'SELECT * FROM test WHERE ASECH(x)' using DBD::CSV ok 463 - parse 'SELECT * FROM test WHERE ASIN(x)' using DBD::CSV ok 464 - parse 'SELECT * FROM test WHERE ASINH(x)' using DBD::CSV ok 465 - parse 'SELECT * FROM test WHERE ATAN(x)' using DBD::CSV ok 466 - parse 'SELECT * FROM test WHERE ATAN2(y, x)' using DBD::CSV ok 467 - parse 'SELECT * FROM test WHERE ATANH(x)' using DBD::CSV ok 468 - parse 'SELECT * FROM test WHERE COS(x)' using DBD::CSV ok 469 - parse 'SELECT * FROM test WHERE COSEC(x)' using DBD::CSV ok 470 - parse 'SELECT * FROM test WHERE COSECH(x)' using DBD::CSV ok 471 - parse 'SELECT * FROM test WHERE COSH(x)' using DBD::CSV ok 472 - parse 'SELECT * FROM test WHERE COT(x)' using DBD::CSV ok 473 - parse 'SELECT * FROM test WHERE COTAN(x)' using DBD::CSV ok 474 - parse 'SELECT * FROM test WHERE COTANH(x)' using DBD::CSV ok 475 - parse 'SELECT * FROM test WHERE COTH(x)' using DBD::CSV ok 476 - parse 'SELECT * FROM test WHERE CSC(x)' using DBD::CSV ok 477 - parse 'SELECT * FROM test WHERE CSCH(x)' using DBD::CSV ok 478 - parse 'SELECT * FROM test WHERE DEG2DEG(deg)' using DBD::CSV ok 479 - parse 'SELECT * FROM test WHERE RAD2RAD(rad)' using DBD::CSV ok 480 - parse 'SELECT * FROM test WHERE GRAD2GRAD(grad)' using DBD::CSV ok 481 - parse 'SELECT * FROM test WHERE DEG2GRAD(deg)' using DBD::CSV ok 482 - parse 'SELECT * FROM test WHERE DEG2RAD(deg)' using DBD::CSV ok 483 - parse 'SELECT * FROM test WHERE GRAD2DEG(grad)' using DBD::CSV ok 484 - parse 'SELECT * FROM test WHERE GRAD2RAD(grad)' using DBD::CSV ok 485 - parse 'SELECT * FROM test WHERE RAD2DEG(rad)' using DBD::CSV ok 486 - parse 'SELECT * FROM test WHERE RAD2GRAD(rad)' using DBD::CSV ok 487 - parse 'SELECT * FROM test WHERE DEGREES(rad)' using DBD::CSV ok 488 - parse 'SELECT * FROM test WHERE RADIANS(deg)' using DBD::CSV ok 489 - parse 'SELECT * FROM test WHERE DEG2DEG(deg, TRUE)' using DBD::CSV ok 490 - parse 'SELECT * FROM test WHERE RAD2RAD(rad, TRUE)' using DBD::CSV ok 491 - parse 'SELECT * FROM test WHERE GRAD2GRAD(grad, TRUE)' using DBD::CSV ok 492 - parse 'SELECT * FROM test WHERE DEG2GRAD(deg, TRUE)' using DBD::CSV ok 493 - parse 'SELECT * FROM test WHERE DEG2RAD(deg, TRUE)' using DBD::CSV ok 494 - parse 'SELECT * FROM test WHERE GRAD2DEG(grad, TRUE)' using DBD::CSV ok 495 - parse 'SELECT * FROM test WHERE GRAD2RAD(grad, TRUE)' using DBD::CSV ok 496 - parse 'SELECT * FROM test WHERE RAD2DEG(rad, TRUE)' using DBD::CSV ok 497 - parse 'SELECT * FROM test WHERE RAD2GRAD(rad, TRUE)' using DBD::CSV ok 498 - parse 'SELECT * FROM test WHERE DEGREES(rad, TRUE)' using DBD::CSV ok 499 - parse 'SELECT * FROM test WHERE RADIANS(deg, TRUE)' using DBD::CSV ok 500 - parse 'SELECT * FROM test WHERE PI()' using DBD::CSV ok 501 - parse 'SELECT * FROM test WHERE SEC(x)' using DBD::CSV ok 502 - parse 'SELECT * FROM test WHERE SECH(x)' using DBD::CSV ok 503 - parse 'SELECT * FROM test WHERE SIN(x)' using DBD::CSV ok 504 - parse 'SELECT * FROM test WHERE SINH(x)' using DBD::CSV ok 505 - parse 'SELECT * FROM test WHERE TAN(x)' using DBD::CSV ok 506 - parse 'SELECT * FROM test WHERE TANH(x)' using DBD::CSV ok 507 - parse ' /* SYSTEM FUNCTIONS */' using DBD::CSV ok 508 - parse 'SELECT * FROM ztable WHERE DBNAME() = foobar' using DBD::CSV ok 509 - parse 'SELECT * FROM ztable WHERE USERNAME() = foobar' using DBD::CSV ok 510 - parse 'SELECT * FROM ztable WHERE USER() = foobar' using DBD::CSV ok 511 - parse ' /* TABLE NAME ALIASES */' using DBD::CSV ok 512 - parse 'SELECT * FROM test as T1' using DBD::CSV ok 513 - parse 'SELECT * FROM test T1' using DBD::CSV ok 514 - parse 'SELECT T1.id, T2.num FROM test as T1 JOIN test2 as T2 USING(id)' using DBD::CSV ok 515 - parse 'SELECT id FROM test as T1 WHERE T1.num < 7' using DBD::CSV ok 516 - parse 'SELECT id FROM test as T1 ORDER BY T1.num' using DBD::CSV ok 517 - parse 'SELECT a.x,b.y FROM foo AS a, bar b WHERE a.baz = b.bop ORDER BY a.blat' using DBD::CSV ok 518 - parse ' /* NUMERIC EXPRESSIONS */' using DBD::CSV ok 519 - parse 'SELECT * FROM foo WHERE 1 = 0 AND baz < (6*foo+11-r)' using DBD::CSV ok 520 - parse ' /* CASE OF IDENTIFIERS */' using DBD::CSV ok 521 - parse 'SELECT ID, phRase FROM tEst AS tE WHERE te.id < 3 ORDER BY TE.phrasE' using DBD::CSV ok 522 - parse ' /* PARENS */' using DBD::CSV ok 523 - parse 'SELECT * FROM ztable WHERE NOT data IN ('one','two')' using DBD::CSV ok 524 - parse 'SELECT * from ztable WHERE (aaa > 'AAA')' using DBD::CSV ok 525 - parse 'SELECT * from ztable WHERE sev = 50 OR sev = 60' using DBD::CSV ok 526 - parse 'SELECT * from ztable WHERE (sev = 50 OR sev = 60)' using DBD::CSV ok 527 - parse 'SELECT * from ztable WHERE sev IN (50,60)' using DBD::CSV ok 528 - parse 'SELECT * from ztable WHERE rc > 200 AND ( sev IN(50,60) )' using DBD::CSV ok 529 - parse 'SELECT * FROM ztable WHERE data NOT IN ('one','two')' using DBD::CSV ok 530 - parse 'SELECT * from ztable WHERE (aaa > 'AAA') AND (zzz < 'ZZZ')' using DBD::CSV ok 531 - parse 'SELECT * from ztable WHERE (sev IN(50,60))' using DBD::CSV ok 532 - parse ' /* NOT */' using DBD::CSV ok 533 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND bop = 7 OR NOT blat = bar' using DBD::CSV ok 534 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND NOT bop = 7 OR NOT blat = bar' using DBD::CSV ok 535 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND NOT bop = 7 OR blat IS NOT NULL' using DBD::CSV ok 536 - parse ' /* IN */' using DBD::CSV ok 537 - parse 'SELECT * FROM bar WHERE foo IN ('aa','ab','ba','bb')' using DBD::CSV ok 538 - parse 'SELECT * FROM bar WHERE foo IN (3.14,2.72,1.41,9.81)' using DBD::CSV ok 539 - parse 'SELECT * FROM bar WHERE foo NOT IN ('aa','ab','ba','bb')' using DBD::CSV ok 540 - parse 'SELECT * FROM bar WHERE foo NOT IN (3.14,2.72,1.41,9.81)' using DBD::CSV ok 541 - parse ' /* BETWEEN */' using DBD::CSV ok 542 - parse 'SELECT * FROM bar WHERE foo BETWEEN ('aa','bb')' using DBD::CSV ok 543 - parse 'SELECT * FROM bar WHERE foo BETWEEN (1.41,9.81)' using DBD::CSV ok 544 - parse 'SELECT * FROM bar WHERE foo NOT BETWEEN ('aa','bb')' using DBD::CSV ok 545 - parse 'SELECT * FROM bar WHERE foo NOT BETWEEN (1.41,9.81)' using DBD::CSV not ok 546 - parse 'UPDATE foo SET bar=REPEAT(status, BIT_LENGTH(str)), bop=7, bump=bar+POSITION(str1, str2), blat=SUBSTRING(bar FROM ASCII(status) FOR CHAR_LENGTH(str))' using DBD::CSV # TODO Analyze failures # Failed (TODO) test 'parse 'UPDATE foo SET bar=REPEAT(status, BIT_LENGTH(str)), bop=7, bump=bar+POSITION(str1, str2), blat=SUBSTRING(bar FROM ASCII(status) FOR CHAR_LENGTH(str))' using DBD::CSV' # at t/01prepare.t line 312. # Incomplete SET clause! not ok 547 - parse 'SELECT * FROM bar WHERE EXP(1) = SINH(1)+COSH(1)' using DBD::CSV # TODO Analyze failures # Failed (TODO) test 'parse 'SELECT * FROM bar WHERE EXP(1) = SINH(1)+COSH(1)' using DBD::CSV' # at t/01prepare.t line 312. # # Execution ERROR: Unknown predicate '{$VAR1 = {}; # }' called from /Users/fly1600/cpanfly-5.16/var/megalib/DBI/DBD/SqlEngine.pm at 335. # not ok 548 - parse 'SELECT * FROM bar WHERE LOG(8, 2) = LOG10(8) / LOG10(2)' using DBD::CSV # TODO Analyze failures # Failed (TODO) test 'parse 'SELECT * FROM bar WHERE LOG(8, 2) = LOG10(8) / LOG10(2)' using DBD::CSV' # at t/01prepare.t line 312. # # Execution ERROR: Unknown predicate '{$VAR1 = {}; # }' called from /Users/fly1600/cpanfly-5.16/var/megalib/DBI/DBD/SqlEngine.pm at 335. # ok 549 - $sth->new ok 550 - $sth->command ok 551 - $sth->params ok 552 - $sth->tables ok 553 - $sth->where()->op ok 554 - $sth->where()->left ok 555 - $sth->where()->left->left ok 556 - $sth->where()->left->right ok 557 - $sth->limit ok 558 - $sth->offset # Command SELECT # Num Pholders 1 # Columns # Tables SQL::Statement::Table=HASH(0x100c51c40),SQL::Statement::Table=HASH(0x100c51a90) # Where op AND # Limit 2 # Offset 5 # Order Cols f,g ok 559 - $stmt->row_values() ok 560 - $stmt->row_values(0) ok 561 - $stmt->row_values(0,1) ok 562 - structure ok 563 - command ok 564 - distinct ok 565 - parse ' /* DROP TABLE */' using DBD::DBM ok 566 - parse 'DROP TABLE foo' using DBD::DBM ok 567 - parse 'DROP TABLE foo CASCADE' using DBD::DBM ok 568 - parse 'DROP TABLE foo RESTRICT' using DBD::DBM ok 569 - parse ' /* DELETE */' using DBD::DBM ok 570 - parse 'DELETE FROM foo' using DBD::DBM ok 571 - parse 'DELETE FROM foo WHERE id < 7' using DBD::DBM ok 572 - parse ' /* UPDATE */' using DBD::DBM ok 573 - parse 'UPDATE foo SET bar = 7' using DBD::DBM ok 574 - parse 'UPDATE foo SET bar = 7 WHERE id > 7' using DBD::DBM ok 575 - parse ' /* INSERT */' using DBD::DBM ok 576 - parse 'INSERT INTO foo VALUES ( 'baz', 7, NULL )' using DBD::DBM ok 577 - parse 'INSERT INTO foo (col1,col2,col7) VALUES ( 'baz', 7, NULL )' using DBD::DBM ok 578 - parse 'INSERT INTO foo VALUES ( now(), trim(lower(user)), curdate-1 )' using DBD::DBM ok 579 - parse 'INSERT INTO foo VALUES ( 'smile :-),(-: twice)', ' \' ) ' )' using DBD::DBM ok 580 - parse 'INSERT INTO foo VALUES (1,'row'),(2,'rows')' using DBD::DBM ok 581 - parse ' /* CREATE TABLE */' using DBD::DBM ok 582 - parse 'CREATE TABLE foo ( id INT )' using DBD::DBM ok 583 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT)' using DBD::DBM ok 584 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT) ON COMMIT DELETE ROWS' using DBD::DBM ok 585 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT) ON COMMIT PRESERVE ROWS' using DBD::DBM ok 586 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT)' using DBD::DBM ok 587 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT) ON COMMIT DELETE ROWS' using DBD::DBM ok 588 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT) ON COMMIT PRESERVE ROWS' using DBD::DBM ok 589 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40) )' using DBD::DBM ok 590 - parse 'CREATE TABLE foo ( id INTEGER UNIQUE, phrase VARCHAR(40) UNIQUE )' using DBD::DBM ok 591 - parse 'CREATE TABLE foo ( id INTEGER PRIMARY KEY, phrase VARCHAR(40) UNIQUE )' using DBD::DBM ok 592 - parse 'CREATE TABLE foo ( id INTEGER PRIMARY KEY, phrase VARCHAR(40) NOT NULL )' using DBD::DBM ok 593 - parse 'CREATE TABLE foo ( id INTEGER NOT NULL, phrase VARCHAR(40) NOT NULL )' using DBD::DBM ok 594 - parse 'CREATE TABLE foo ( id INTEGER UNIQUE NOT NULL, phrase VARCHAR(40) )' using DBD::DBM ok 595 - parse 'CREATE TABLE foo ( phrase CHARACTER VARYING(255) )' using DBD::DBM ok 596 - parse 'CREATE TABLE foo ( phrase NUMERIC(4,6) )' using DBD::DBM ok 597 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40), CONSTRAINT "foo_pkey" PRIMARY KEY ( "id", "phrase" ), CONSTRAINT "foo_fkey" FOREIGN KEY ( "id" ) REFERENCES "bar" ( "bar_id" ))' using DBD::DBM ok 598 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40), PRIMARY KEY ( "id" ), FOREIGN KEY ("id", "phrase") REFERENCES "bar" ("id2", "phrase2"))' using DBD::DBM ok 599 - parse 'CREATE TABLE foo ( id INTEGER, phrase CHAR(255), phrase2 VARCHAR(40), CONSTRAINT "foo_pkey" PRIMARY KEY ( "id", phrase, "phrase2" ), CONSTRAINT "foo_fkey" FOREIGN KEY ("id", "phrase", "phrase2") REFERENCES "bar" ("id2", "phrase2", "phase10"))' using DBD::DBM ok 600 - parse ' /* JOINS */' using DBD::DBM ok 601 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL INNER JOIN zUpper' using DBD::DBM ok 602 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL LEFT JOIN zUpper' using DBD::DBM ok 603 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL RIGHT JOIN zUpper' using DBD::DBM ok 604 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL FULL JOIN zUpper' using DBD::DBM ok 605 - parse 'SELECT Lnum,Llet,Ulet FROM zLower INNER JOIN zUpper ON Lnum = Unum' using DBD::DBM ok 606 - parse 'SELECT Lnum,Llet,Ulet FROM zLower LEFT JOIN zUpper ON Lnum = Unum' using DBD::DBM ok 607 - parse 'SELECT Lnum,Llet,Ulet FROM zLower RIGHT JOIN zUpper ON Lnum = Unum' using DBD::DBM ok 608 - parse 'SELECT Lnum,Llet,Ulet FROM zLower FULL JOIN zUpper ON Lnum = Unum' using DBD::DBM ok 609 - parse 'SELECT Lnum,Llet,Ulet FROM zLower INNER JOIN zUpper USING(num)' using DBD::DBM ok 610 - parse 'SELECT Lnum,Llet,Ulet FROM zLower LEFT JOIN zUpper USING(num)' using DBD::DBM ok 611 - parse 'SELECT Lnum,Llet,Ulet FROM zLower RIGHT JOIN zUpper USING(num)' using DBD::DBM ok 612 - parse 'SELECT Lnum,Llet,Ulet FROM zLower FULL JOIN zUpper USING(num)' using DBD::DBM ok 613 - parse 'SELECT Lnum,Llet,Ulet FROM zLower,zUpper WHERE Lnum = Unum' using DBD::DBM ok 614 - parse 'SELECT * FROM zLower NATURAL INNER JOIN zUpper' using DBD::DBM ok 615 - parse 'SELECT * FROM zLower NATURAL LEFT JOIN zUpper' using DBD::DBM ok 616 - parse 'SELECT * FROM zLower NATURAL RIGHT JOIN zUpper' using DBD::DBM ok 617 - parse 'SELECT * FROM zLower NATURAL FULL JOIN zUpper' using DBD::DBM ok 618 - parse 'SELECT * FROM zLower INNER JOIN zUpper ON Lnum = Unum' using DBD::DBM ok 619 - parse 'SELECT * FROM zLower LEFT JOIN zUpper ON Lnum = Unum' using DBD::DBM ok 620 - parse 'SELECT * FROM zLower RIGHT JOIN zUpper ON Lnum = Unum' using DBD::DBM ok 621 - parse 'SELECT * FROM zLower FULL JOIN zUpper ON Lnum = Unum' using DBD::DBM ok 622 - parse 'SELECT * FROM zLower INNER JOIN zUpper USING(num)' using DBD::DBM ok 623 - parse 'SELECT * FROM zLower LEFT JOIN zUpper USING(num)' using DBD::DBM ok 624 - parse 'SELECT * FROM zLower RIGHT JOIN zUpper USING(num)' using DBD::DBM ok 625 - parse 'SELECT * FROM zLower FULL JOIN zUpper USING(num)' using DBD::DBM ok 626 - parse 'SELECT * FROM zLower,zUpper WHERE Lnum = Unum' using DBD::DBM ok 627 - parse ' /* SELECT COLUMNS */' using DBD::DBM ok 628 - parse 'SELECT id, phrase FROM foo' using DBD::DBM ok 629 - parse 'SELECT * FROM foo' using DBD::DBM ok 630 - parse 'SELECT DISTINCT * FROM foo' using DBD::DBM ok 631 - parse 'SELECT ALL * FROM foo' using DBD::DBM ok 632 - parse 'SELECT A.*,B.* FROM A,B WHERE A.id=B.id' using DBD::DBM ok 633 - parse ' /* SET FUNCTIONS */' using DBD::DBM ok 634 - parse 'SELECT MAX(foo) FROM bar' using DBD::DBM ok 635 - parse 'SELECT MIN(foo) FROM bar' using DBD::DBM ok 636 - parse 'SELECT AVG(foo) FROM bar' using DBD::DBM ok 637 - parse 'SELECT SUM(foo) FROM bar' using DBD::DBM ok 638 - parse 'SELECT COUNT(foo) FROM foo' using DBD::DBM ok 639 - parse 'SELECT COUNT(*) FROM foo' using DBD::DBM ok 640 - parse 'SELECT SUM(DISTINCT foo) FROM bar' using DBD::DBM ok 641 - parse 'SELECT SUM(ALL foo) FROM bar' using DBD::DBM ok 642 - parse ' /* ORDER BY */' using DBD::DBM ok 643 - parse 'SELECT * FROM foo ORDER BY bar' using DBD::DBM ok 644 - parse 'SELECT * FROM foo ORDER BY bar, baz' using DBD::DBM ok 645 - parse 'SELECT * FROM foo ORDER BY bar DESC' using DBD::DBM ok 646 - parse 'SELECT * FROM foo ORDER BY bar ASC' using DBD::DBM ok 647 - parse ' /* LIMIT */' using DBD::DBM ok 648 - parse 'SELECT * FROM foo LIMIT 5' using DBD::DBM ok 649 - parse 'SELECT * FROM foo LIMIT 0, 5' using DBD::DBM ok 650 - parse 'SELECT * FROM foo LIMIT 5, 10' using DBD::DBM ok 651 - parse '/* DATE/TIME FUNCTIONS */' using DBD::DBM ok 652 - parse 'SELECT CURRENT_DATE()' using DBD::DBM ok 653 - parse 'SELECT CURRENT_TIME()' using DBD::DBM ok 654 - parse 'SELECT CURRENT_TIMESTAMP()' using DBD::DBM ok 655 - parse 'SELECT CURDATE()' using DBD::DBM ok 656 - parse 'SELECT CURTIME()' using DBD::DBM ok 657 - parse 'SELECT NOW()' using DBD::DBM ok 658 - parse 'SELECT UNIX_TIMESTAMP() ' using DBD::DBM ok 659 - parse 'SELECT CURRENT_TIME(2)' using DBD::DBM ok 660 - parse 'SELECT CURRENT_TIMESTAMP(2)' using DBD::DBM ok 661 - parse 'SELECT CURTIME(2)' using DBD::DBM ok 662 - parse 'SELECT NOW(2)' using DBD::DBM ok 663 - parse 'SELECT UNIX_TIMESTAMP(2)' using DBD::DBM ok 664 - parse ' /* STRING FUNCTIONS */' using DBD::DBM ok 665 - parse 'SELECT * FROM foo WHERE ASCII(status) = 65' using DBD::DBM ok 666 - parse 'SELECT * FROM foo WHERE CHAR(code) = 'A'' using DBD::DBM ok 667 - parse 'SELECT * FROM foo WHERE CHAR(chr1,chr2,chr3) = 'ABC'' using DBD::DBM ok 668 - parse 'SELECT * FROM foo WHERE BIT_LENGTH(str) = 27' using DBD::DBM ok 669 - parse 'SELECT * FROM foo WHERE CHARACTER_LENGTH(str) = 6' using DBD::DBM ok 670 - parse 'SELECT * FROM foo WHERE CHAR_LENGTH(str) = 6' using DBD::DBM ok 671 - parse 'SELECT * FROM foo WHERE COALESCE(NULL, status) = 'bar'' using DBD::DBM ok 672 - parse 'SELECT * FROM foo WHERE NVL(NULL, status) = 'bar'' using DBD::DBM ok 673 - parse 'SELECT * FROM foo WHERE IFNULL(NULL, status) = 'bar'' using DBD::DBM ok 674 - parse 'SELECT * FROM foo WHERE CONCAT(str1, str2) = 'bar'' using DBD::DBM ok 675 - parse 'SELECT * FROM foo WHERE DECODE(color,'White','W','Red','R','B') = 'W'' using DBD::DBM ok 676 - parse 'SELECT * FROM foo WHERE INSERT(str1, 4, 5, str2) = 'foobarland'' using DBD::DBM ok 677 - parse 'SELECT * FROM foo WHERE LEFT(phrase) = 'bar'' using DBD::DBM ok 678 - parse 'SELECT * FROM foo WHERE RIGHT(phrase) = 'bar'' using DBD::DBM ok 679 - parse 'SELECT * FROM foo WHERE LOCATE(str1, str2) = 2' using DBD::DBM ok 680 - parse 'SELECT * FROM foo WHERE LOCATE(str1, str2, 3) = 5' using DBD::DBM ok 681 - parse 'SELECT * FROM foo WHERE POSITION(str1, str2) = 2' using DBD::DBM ok 682 - parse 'SELECT * FROM foo WHERE POSITION(str1, str2, 3) = 5' using DBD::DBM ok 683 - parse 'SELECT * FROM foo WHERE LOWER(phrase) = 'bar'' using DBD::DBM ok 684 - parse 'SELECT * FROM foo WHERE UPPER(phrase) = 'BAR'' using DBD::DBM ok 685 - parse 'SELECT * FROM foo WHERE LCASE(phrase) = 'BAR'' using DBD::DBM ok 686 - parse 'SELECT * FROM foo WHERE UCASE(phrase) = 'bar'' using DBD::DBM ok 687 - parse 'SELECT * FROM foo WHERE LTRIM(str) = 'bar'' using DBD::DBM ok 688 - parse 'SELECT * FROM foo WHERE RTRIM(str) = 'bar'' using DBD::DBM ok 689 - parse 'SELECT * FROM foo WHERE OCTET_LENGTH(str) = 12' using DBD::DBM ok 690 - parse 'SELECT * FROM foo WHERE REGEX(phrase, '/EF/i') = TRUE' using DBD::DBM ok 691 - parse 'SELECT * FROM foo WHERE REPEAT(status, 3) = 'AAA'' using DBD::DBM ok 692 - parse 'SELECT * FROM foo WHERE REPLACE(phrase, 's/z(.+)ky//i') = 'bar'' using DBD::DBM ok 693 - parse 'SELECT * FROM foo WHERE SUBSTITUTE(phrase, 's/z(.+)ky//i') = 'bar'' using DBD::DBM ok 694 - parse 'SELECT * FROM foo WHERE SOUNDEX(name1, name2) = TRUE' using DBD::DBM ok 695 - parse 'SELECT * FROM foo WHERE SPACE(num) = ' '' using DBD::DBM ok 696 - parse 'SELECT * FROM foo WHERE blat = SUBSTRING(bar FROM 3 FOR 6)' using DBD::DBM ok 697 - parse 'SELECT * FROM foo WHERE blat = SUBSTRING(bar FROM 3)' using DBD::DBM ok 698 - parse 'SELECT * FROM foo WHERE blat = SUBSTR(bar, 3, 6)' using DBD::DBM ok 699 - parse 'SELECT * FROM foo WHERE blat = SUBSTR(bar, 3)' using DBD::DBM ok 700 - parse 'SELECT * FROM foo WHERE blat = TRANSLATE(bar, set1, set2)' using DBD::DBM ok 701 - parse 'SELECT * FROM foo WHERE TRIM( str ) = 'bar'' using DBD::DBM ok 702 - parse 'SELECT * FROM foo WHERE TRIM( LEADING FROM str ) = 'bar'' using DBD::DBM ok 703 - parse 'SELECT * FROM foo WHERE TRIM( TRAILING FROM str ) = 'bar'' using DBD::DBM ok 704 - parse 'SELECT * FROM foo WHERE TRIM( BOTH FROM str ) = 'bar'' using DBD::DBM ok 705 - parse 'SELECT * FROM foo WHERE TRIM( LEADING ';' FROM str ) = 'bar'' using DBD::DBM ok 706 - parse 'SELECT * FROM foo WHERE TRIM( UPPER(phrase) ) = 'bar'' using DBD::DBM ok 707 - parse 'SELECT * FROM foo WHERE TRIM( LOWER(phrase) ) = 'bar'' using DBD::DBM ok 708 - parse 'UPDATE foo SET bar='baz', bop=7, bump=bar+8, blat=SUBSTRING(bar FROM 3 FOR 6)' using DBD::DBM ok 709 - parse ' /* NUMERIC FUNCTIONS */' using DBD::DBM ok 710 - parse 'SELECT * FROM bar WHERE ABS(-4) = 4' using DBD::DBM ok 711 - parse 'SELECT * FROM bar WHERE CEILING(-4.5) = -4' using DBD::DBM ok 712 - parse 'SELECT * FROM bar WHERE CEIL(-4.9) = -4' using DBD::DBM ok 713 - parse 'SELECT * FROM bar WHERE FLOOR(4.999999999999) = 4' using DBD::DBM ok 714 - parse 'SELECT * FROM bar WHERE LOG(6) = LOG10(6)' using DBD::DBM ok 715 - parse 'SELECT * FROM bar WHERE LN(1) = EXP(1)' using DBD::DBM ok 716 - parse 'SELECT * FROM bar WHERE MOD(8, 5) = 3' using DBD::DBM ok 717 - parse 'SELECT * FROM bar WHERE POWER(2, 4) = 16' using DBD::DBM ok 718 - parse 'SELECT * FROM bar WHERE POW(2, 4) = 16' using DBD::DBM ok 719 - parse 'SELECT * FROM bar WHERE RAND(2) = 0' using DBD::DBM ok 720 - parse 'SELECT * FROM bar WHERE RAND(2, UNIX_TIMESTAMP()) = 0' using DBD::DBM ok 721 - parse 'SELECT * FROM bar WHERE ROUND(4.999999999999) = 5' using DBD::DBM ok 722 - parse 'SELECT * FROM bar WHERE ROUND(4.542222222222, 1) = 4.5' using DBD::DBM ok 723 - parse 'SELECT * FROM bar WHERE SIGN(-25.5) = -1' using DBD::DBM ok 724 - parse 'SELECT * FROM bar WHERE SIGN(53645) = 1' using DBD::DBM ok 725 - parse 'SELECT * FROM bar WHERE SIGN(0) = 0' using DBD::DBM ok 726 - parse 'SELECT * FROM bar WHERE SIGN(NULL) = NULL' using DBD::DBM ok 727 - parse 'SELECT * FROM bar WHERE SQRT(64) = 8' using DBD::DBM ok 728 - parse 'SELECT * FROM bar WHERE TRUNCATE(4.999999999999) = 4' using DBD::DBM ok 729 - parse 'SELECT * FROM bar WHERE TRUNC(-4.9) = -4' using DBD::DBM ok 730 - parse 'SELECT * FROM bar WHERE TRUNCATE(4.934, 1) = 4.9' using DBD::DBM ok 731 - parse 'SELECT * FROM bar WHERE TRUNC(-4.99999, 1) = -4.9' using DBD::DBM ok 732 - parse ' /* TRIGONOMETRIC FUNCTIONS */' using DBD::DBM ok 733 - parse 'SELECT * FROM test WHERE ACOS(x)' using DBD::DBM ok 734 - parse 'SELECT * FROM test WHERE ACOSEC(x)' using DBD::DBM ok 735 - parse 'SELECT * FROM test WHERE ACOSECH(x)' using DBD::DBM ok 736 - parse 'SELECT * FROM test WHERE ACOSH(x)' using DBD::DBM ok 737 - parse 'SELECT * FROM test WHERE ACOT(x)' using DBD::DBM ok 738 - parse 'SELECT * FROM test WHERE ACOTAN(x)' using DBD::DBM ok 739 - parse 'SELECT * FROM test WHERE ACOTANH(x)' using DBD::DBM ok 740 - parse 'SELECT * FROM test WHERE ACOTH(x)' using DBD::DBM ok 741 - parse 'SELECT * FROM test WHERE ACSC(x)' using DBD::DBM ok 742 - parse 'SELECT * FROM test WHERE ACSCH(x)' using DBD::DBM ok 743 - parse 'SELECT * FROM test WHERE ASEC(x)' using DBD::DBM ok 744 - parse 'SELECT * FROM test WHERE ASECH(x)' using DBD::DBM ok 745 - parse 'SELECT * FROM test WHERE ASIN(x)' using DBD::DBM ok 746 - parse 'SELECT * FROM test WHERE ASINH(x)' using DBD::DBM ok 747 - parse 'SELECT * FROM test WHERE ATAN(x)' using DBD::DBM ok 748 - parse 'SELECT * FROM test WHERE ATAN2(y, x)' using DBD::DBM ok 749 - parse 'SELECT * FROM test WHERE ATANH(x)' using DBD::DBM ok 750 - parse 'SELECT * FROM test WHERE COS(x)' using DBD::DBM ok 751 - parse 'SELECT * FROM test WHERE COSEC(x)' using DBD::DBM ok 752 - parse 'SELECT * FROM test WHERE COSECH(x)' using DBD::DBM ok 753 - parse 'SELECT * FROM test WHERE COSH(x)' using DBD::DBM ok 754 - parse 'SELECT * FROM test WHERE COT(x)' using DBD::DBM ok 755 - parse 'SELECT * FROM test WHERE COTAN(x)' using DBD::DBM ok 756 - parse 'SELECT * FROM test WHERE COTANH(x)' using DBD::DBM ok 757 - parse 'SELECT * FROM test WHERE COTH(x)' using DBD::DBM ok 758 - parse 'SELECT * FROM test WHERE CSC(x)' using DBD::DBM ok 759 - parse 'SELECT * FROM test WHERE CSCH(x)' using DBD::DBM ok 760 - parse 'SELECT * FROM test WHERE DEG2DEG(deg)' using DBD::DBM ok 761 - parse 'SELECT * FROM test WHERE RAD2RAD(rad)' using DBD::DBM ok 762 - parse 'SELECT * FROM test WHERE GRAD2GRAD(grad)' using DBD::DBM ok 763 - parse 'SELECT * FROM test WHERE DEG2GRAD(deg)' using DBD::DBM ok 764 - parse 'SELECT * FROM test WHERE DEG2RAD(deg)' using DBD::DBM ok 765 - parse 'SELECT * FROM test WHERE GRAD2DEG(grad)' using DBD::DBM ok 766 - parse 'SELECT * FROM test WHERE GRAD2RAD(grad)' using DBD::DBM ok 767 - parse 'SELECT * FROM test WHERE RAD2DEG(rad)' using DBD::DBM ok 768 - parse 'SELECT * FROM test WHERE RAD2GRAD(rad)' using DBD::DBM ok 769 - parse 'SELECT * FROM test WHERE DEGREES(rad)' using DBD::DBM ok 770 - parse 'SELECT * FROM test WHERE RADIANS(deg)' using DBD::DBM ok 771 - parse 'SELECT * FROM test WHERE DEG2DEG(deg, TRUE)' using DBD::DBM ok 772 - parse 'SELECT * FROM test WHERE RAD2RAD(rad, TRUE)' using DBD::DBM ok 773 - parse 'SELECT * FROM test WHERE GRAD2GRAD(grad, TRUE)' using DBD::DBM ok 774 - parse 'SELECT * FROM test WHERE DEG2GRAD(deg, TRUE)' using DBD::DBM ok 775 - parse 'SELECT * FROM test WHERE DEG2RAD(deg, TRUE)' using DBD::DBM ok 776 - parse 'SELECT * FROM test WHERE GRAD2DEG(grad, TRUE)' using DBD::DBM ok 777 - parse 'SELECT * FROM test WHERE GRAD2RAD(grad, TRUE)' using DBD::DBM ok 778 - parse 'SELECT * FROM test WHERE RAD2DEG(rad, TRUE)' using DBD::DBM ok 779 - parse 'SELECT * FROM test WHERE RAD2GRAD(rad, TRUE)' using DBD::DBM ok 780 - parse 'SELECT * FROM test WHERE DEGREES(rad, TRUE)' using DBD::DBM ok 781 - parse 'SELECT * FROM test WHERE RADIANS(deg, TRUE)' using DBD::DBM ok 782 - parse 'SELECT * FROM test WHERE PI()' using DBD::DBM ok 783 - parse 'SELECT * FROM test WHERE SEC(x)' using DBD::DBM ok 784 - parse 'SELECT * FROM test WHERE SECH(x)' using DBD::DBM ok 785 - parse 'SELECT * FROM test WHERE SIN(x)' using DBD::DBM ok 786 - parse 'SELECT * FROM test WHERE SINH(x)' using DBD::DBM ok 787 - parse 'SELECT * FROM test WHERE TAN(x)' using DBD::DBM ok 788 - parse 'SELECT * FROM test WHERE TANH(x)' using DBD::DBM ok 789 - parse ' /* SYSTEM FUNCTIONS */' using DBD::DBM ok 790 - parse 'SELECT * FROM ztable WHERE DBNAME() = foobar' using DBD::DBM ok 791 - parse 'SELECT * FROM ztable WHERE USERNAME() = foobar' using DBD::DBM ok 792 - parse 'SELECT * FROM ztable WHERE USER() = foobar' using DBD::DBM ok 793 - parse ' /* TABLE NAME ALIASES */' using DBD::DBM ok 794 - parse 'SELECT * FROM test as T1' using DBD::DBM ok 795 - parse 'SELECT * FROM test T1' using DBD::DBM ok 796 - parse 'SELECT T1.id, T2.num FROM test as T1 JOIN test2 as T2 USING(id)' using DBD::DBM ok 797 - parse 'SELECT id FROM test as T1 WHERE T1.num < 7' using DBD::DBM ok 798 - parse 'SELECT id FROM test as T1 ORDER BY T1.num' using DBD::DBM ok 799 - parse 'SELECT a.x,b.y FROM foo AS a, bar b WHERE a.baz = b.bop ORDER BY a.blat' using DBD::DBM ok 800 - parse ' /* NUMERIC EXPRESSIONS */' using DBD::DBM ok 801 - parse 'SELECT * FROM foo WHERE 1 = 0 AND baz < (6*foo+11-r)' using DBD::DBM ok 802 - parse ' /* CASE OF IDENTIFIERS */' using DBD::DBM ok 803 - parse 'SELECT ID, phRase FROM tEst AS tE WHERE te.id < 3 ORDER BY TE.phrasE' using DBD::DBM ok 804 - parse ' /* PARENS */' using DBD::DBM ok 805 - parse 'SELECT * FROM ztable WHERE NOT data IN ('one','two')' using DBD::DBM ok 806 - parse 'SELECT * from ztable WHERE (aaa > 'AAA')' using DBD::DBM ok 807 - parse 'SELECT * from ztable WHERE sev = 50 OR sev = 60' using DBD::DBM ok 808 - parse 'SELECT * from ztable WHERE (sev = 50 OR sev = 60)' using DBD::DBM ok 809 - parse 'SELECT * from ztable WHERE sev IN (50,60)' using DBD::DBM ok 810 - parse 'SELECT * from ztable WHERE rc > 200 AND ( sev IN(50,60) )' using DBD::DBM ok 811 - parse 'SELECT * FROM ztable WHERE data NOT IN ('one','two')' using DBD::DBM ok 812 - parse 'SELECT * from ztable WHERE (aaa > 'AAA') AND (zzz < 'ZZZ')' using DBD::DBM ok 813 - parse 'SELECT * from ztable WHERE (sev IN(50,60))' using DBD::DBM ok 814 - parse ' /* NOT */' using DBD::DBM ok 815 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND bop = 7 OR NOT blat = bar' using DBD::DBM ok 816 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND NOT bop = 7 OR NOT blat = bar' using DBD::DBM ok 817 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND NOT bop = 7 OR blat IS NOT NULL' using DBD::DBM ok 818 - parse ' /* IN */' using DBD::DBM ok 819 - parse 'SELECT * FROM bar WHERE foo IN ('aa','ab','ba','bb')' using DBD::DBM ok 820 - parse 'SELECT * FROM bar WHERE foo IN (3.14,2.72,1.41,9.81)' using DBD::DBM ok 821 - parse 'SELECT * FROM bar WHERE foo NOT IN ('aa','ab','ba','bb')' using DBD::DBM ok 822 - parse 'SELECT * FROM bar WHERE foo NOT IN (3.14,2.72,1.41,9.81)' using DBD::DBM ok 823 - parse ' /* BETWEEN */' using DBD::DBM ok 824 - parse 'SELECT * FROM bar WHERE foo BETWEEN ('aa','bb')' using DBD::DBM ok 825 - parse 'SELECT * FROM bar WHERE foo BETWEEN (1.41,9.81)' using DBD::DBM ok 826 - parse 'SELECT * FROM bar WHERE foo NOT BETWEEN ('aa','bb')' using DBD::DBM ok 827 - parse 'SELECT * FROM bar WHERE foo NOT BETWEEN (1.41,9.81)' using DBD::DBM not ok 828 - parse 'UPDATE foo SET bar=REPEAT(status, BIT_LENGTH(str)), bop=7, bump=bar+POSITION(str1, str2), blat=SUBSTRING(bar FROM ASCII(status) FOR CHAR_LENGTH(str))' using DBD::DBM # TODO Analyze failures # Failed (TODO) test 'parse 'UPDATE foo SET bar=REPEAT(status, BIT_LENGTH(str)), bop=7, bump=bar+POSITION(str1, str2), blat=SUBSTRING(bar FROM ASCII(status) FOR CHAR_LENGTH(str))' using DBD::DBM' # at t/01prepare.t line 312. # Incomplete SET clause! not ok 829 - parse 'SELECT * FROM bar WHERE EXP(1) = SINH(1)+COSH(1)' using DBD::DBM # TODO Analyze failures # Failed (TODO) test 'parse 'SELECT * FROM bar WHERE EXP(1) = SINH(1)+COSH(1)' using DBD::DBM' # at t/01prepare.t line 312. # # Execution ERROR: Unknown predicate '{$VAR1 = {}; # }' called from /Users/fly1600/cpanfly-5.16/var/megalib/DBI/DBD/SqlEngine.pm at 335. # not ok 830 - parse 'SELECT * FROM bar WHERE LOG(8, 2) = LOG10(8) / LOG10(2)' using DBD::DBM # TODO Analyze failures # Failed (TODO) test 'parse 'SELECT * FROM bar WHERE LOG(8, 2) = LOG10(8) / LOG10(2)' using DBD::DBM' # at t/01prepare.t line 312. # # Execution ERROR: Unknown predicate '{$VAR1 = {}; # }' called from /Users/fly1600/cpanfly-5.16/var/megalib/DBI/DBD/SqlEngine.pm at 335. # ok 831 - $sth->new ok 832 - $sth->command ok 833 - $sth->params ok 834 - $sth->tables ok 835 - $sth->where()->op ok 836 - $sth->where()->left ok 837 - $sth->where()->left->left ok 838 - $sth->where()->left->right ok 839 - $sth->limit ok 840 - $sth->offset # Command SELECT # Num Pholders 1 # Columns # Tables SQL::Statement::Table=HASH(0x100c7c8e0),SQL::Statement::Table=HASH(0x100c832c0) # Where op AND # Limit 2 # Offset 5 # Order Cols f,g ok 841 - $stmt->row_values() ok 842 - $stmt->row_values(0) ok 843 - $stmt->row_values(0,1) ok 844 - structure ok 845 - command ok 846 - distinct ok 847 - parse ' /* DROP TABLE */' using DBD::File ok 848 - parse 'DROP TABLE foo' using DBD::File ok 849 - parse 'DROP TABLE foo CASCADE' using DBD::File ok 850 - parse 'DROP TABLE foo RESTRICT' using DBD::File ok 851 - parse ' /* DELETE */' using DBD::File ok 852 - parse 'DELETE FROM foo' using DBD::File ok 853 - parse 'DELETE FROM foo WHERE id < 7' using DBD::File ok 854 - parse ' /* UPDATE */' using DBD::File ok 855 - parse 'UPDATE foo SET bar = 7' using DBD::File ok 856 - parse 'UPDATE foo SET bar = 7 WHERE id > 7' using DBD::File ok 857 - parse ' /* INSERT */' using DBD::File ok 858 - parse 'INSERT INTO foo VALUES ( 'baz', 7, NULL )' using DBD::File ok 859 - parse 'INSERT INTO foo (col1,col2,col7) VALUES ( 'baz', 7, NULL )' using DBD::File ok 860 - parse 'INSERT INTO foo VALUES ( now(), trim(lower(user)), curdate-1 )' using DBD::File ok 861 - parse 'INSERT INTO foo VALUES ( 'smile :-),(-: twice)', ' \' ) ' )' using DBD::File ok 862 - parse 'INSERT INTO foo VALUES (1,'row'),(2,'rows')' using DBD::File ok 863 - parse ' /* CREATE TABLE */' using DBD::File ok 864 - parse 'CREATE TABLE foo ( id INT )' using DBD::File ok 865 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT)' using DBD::File ok 866 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT) ON COMMIT DELETE ROWS' using DBD::File ok 867 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT) ON COMMIT PRESERVE ROWS' using DBD::File ok 868 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT)' using DBD::File ok 869 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT) ON COMMIT DELETE ROWS' using DBD::File ok 870 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT) ON COMMIT PRESERVE ROWS' using DBD::File ok 871 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40) )' using DBD::File ok 872 - parse 'CREATE TABLE foo ( id INTEGER UNIQUE, phrase VARCHAR(40) UNIQUE )' using DBD::File ok 873 - parse 'CREATE TABLE foo ( id INTEGER PRIMARY KEY, phrase VARCHAR(40) UNIQUE )' using DBD::File ok 874 - parse 'CREATE TABLE foo ( id INTEGER PRIMARY KEY, phrase VARCHAR(40) NOT NULL )' using DBD::File ok 875 - parse 'CREATE TABLE foo ( id INTEGER NOT NULL, phrase VARCHAR(40) NOT NULL )' using DBD::File ok 876 - parse 'CREATE TABLE foo ( id INTEGER UNIQUE NOT NULL, phrase VARCHAR(40) )' using DBD::File ok 877 - parse 'CREATE TABLE foo ( phrase CHARACTER VARYING(255) )' using DBD::File ok 878 - parse 'CREATE TABLE foo ( phrase NUMERIC(4,6) )' using DBD::File ok 879 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40), CONSTRAINT "foo_pkey" PRIMARY KEY ( "id", "phrase" ), CONSTRAINT "foo_fkey" FOREIGN KEY ( "id" ) REFERENCES "bar" ( "bar_id" ))' using DBD::File ok 880 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40), PRIMARY KEY ( "id" ), FOREIGN KEY ("id", "phrase") REFERENCES "bar" ("id2", "phrase2"))' using DBD::File ok 881 - parse 'CREATE TABLE foo ( id INTEGER, phrase CHAR(255), phrase2 VARCHAR(40), CONSTRAINT "foo_pkey" PRIMARY KEY ( "id", phrase, "phrase2" ), CONSTRAINT "foo_fkey" FOREIGN KEY ("id", "phrase", "phrase2") REFERENCES "bar" ("id2", "phrase2", "phase10"))' using DBD::File ok 882 - parse ' /* JOINS */' using DBD::File ok 883 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL INNER JOIN zUpper' using DBD::File ok 884 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL LEFT JOIN zUpper' using DBD::File ok 885 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL RIGHT JOIN zUpper' using DBD::File ok 886 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL FULL JOIN zUpper' using DBD::File ok 887 - parse 'SELECT Lnum,Llet,Ulet FROM zLower INNER JOIN zUpper ON Lnum = Unum' using DBD::File ok 888 - parse 'SELECT Lnum,Llet,Ulet FROM zLower LEFT JOIN zUpper ON Lnum = Unum' using DBD::File ok 889 - parse 'SELECT Lnum,Llet,Ulet FROM zLower RIGHT JOIN zUpper ON Lnum = Unum' using DBD::File ok 890 - parse 'SELECT Lnum,Llet,Ulet FROM zLower FULL JOIN zUpper ON Lnum = Unum' using DBD::File ok 891 - parse 'SELECT Lnum,Llet,Ulet FROM zLower INNER JOIN zUpper USING(num)' using DBD::File ok 892 - parse 'SELECT Lnum,Llet,Ulet FROM zLower LEFT JOIN zUpper USING(num)' using DBD::File ok 893 - parse 'SELECT Lnum,Llet,Ulet FROM zLower RIGHT JOIN zUpper USING(num)' using DBD::File ok 894 - parse 'SELECT Lnum,Llet,Ulet FROM zLower FULL JOIN zUpper USING(num)' using DBD::File ok 895 - parse 'SELECT Lnum,Llet,Ulet FROM zLower,zUpper WHERE Lnum = Unum' using DBD::File ok 896 - parse 'SELECT * FROM zLower NATURAL INNER JOIN zUpper' using DBD::File ok 897 - parse 'SELECT * FROM zLower NATURAL LEFT JOIN zUpper' using DBD::File ok 898 - parse 'SELECT * FROM zLower NATURAL RIGHT JOIN zUpper' using DBD::File ok 899 - parse 'SELECT * FROM zLower NATURAL FULL JOIN zUpper' using DBD::File ok 900 - parse 'SELECT * FROM zLower INNER JOIN zUpper ON Lnum = Unum' using DBD::File ok 901 - parse 'SELECT * FROM zLower LEFT JOIN zUpper ON Lnum = Unum' using DBD::File ok 902 - parse 'SELECT * FROM zLower RIGHT JOIN zUpper ON Lnum = Unum' using DBD::File ok 903 - parse 'SELECT * FROM zLower FULL JOIN zUpper ON Lnum = Unum' using DBD::File ok 904 - parse 'SELECT * FROM zLower INNER JOIN zUpper USING(num)' using DBD::File ok 905 - parse 'SELECT * FROM zLower LEFT JOIN zUpper USING(num)' using DBD::File ok 906 - parse 'SELECT * FROM zLower RIGHT JOIN zUpper USING(num)' using DBD::File ok 907 - parse 'SELECT * FROM zLower FULL JOIN zUpper USING(num)' using DBD::File ok 908 - parse 'SELECT * FROM zLower,zUpper WHERE Lnum = Unum' using DBD::File ok 909 - parse ' /* SELECT COLUMNS */' using DBD::File ok 910 - parse 'SELECT id, phrase FROM foo' using DBD::File ok 911 - parse 'SELECT * FROM foo' using DBD::File ok 912 - parse 'SELECT DISTINCT * FROM foo' using DBD::File ok 913 - parse 'SELECT ALL * FROM foo' using DBD::File ok 914 - parse 'SELECT A.*,B.* FROM A,B WHERE A.id=B.id' using DBD::File ok 915 - parse ' /* SET FUNCTIONS */' using DBD::File ok 916 - parse 'SELECT MAX(foo) FROM bar' using DBD::File ok 917 - parse 'SELECT MIN(foo) FROM bar' using DBD::File ok 918 - parse 'SELECT AVG(foo) FROM bar' using DBD::File ok 919 - parse 'SELECT SUM(foo) FROM bar' using DBD::File ok 920 - parse 'SELECT COUNT(foo) FROM foo' using DBD::File ok 921 - parse 'SELECT COUNT(*) FROM foo' using DBD::File ok 922 - parse 'SELECT SUM(DISTINCT foo) FROM bar' using DBD::File ok 923 - parse 'SELECT SUM(ALL foo) FROM bar' using DBD::File ok 924 - parse ' /* ORDER BY */' using DBD::File ok 925 - parse 'SELECT * FROM foo ORDER BY bar' using DBD::File ok 926 - parse 'SELECT * FROM foo ORDER BY bar, baz' using DBD::File ok 927 - parse 'SELECT * FROM foo ORDER BY bar DESC' using DBD::File ok 928 - parse 'SELECT * FROM foo ORDER BY bar ASC' using DBD::File ok 929 - parse ' /* LIMIT */' using DBD::File ok 930 - parse 'SELECT * FROM foo LIMIT 5' using DBD::File ok 931 - parse 'SELECT * FROM foo LIMIT 0, 5' using DBD::File ok 932 - parse 'SELECT * FROM foo LIMIT 5, 10' using DBD::File ok 933 - parse '/* DATE/TIME FUNCTIONS */' using DBD::File ok 934 - parse 'SELECT CURRENT_DATE()' using DBD::File ok 935 - parse 'SELECT CURRENT_TIME()' using DBD::File ok 936 - parse 'SELECT CURRENT_TIMESTAMP()' using DBD::File ok 937 - parse 'SELECT CURDATE()' using DBD::File ok 938 - parse 'SELECT CURTIME()' using DBD::File ok 939 - parse 'SELECT NOW()' using DBD::File ok 940 - parse 'SELECT UNIX_TIMESTAMP() ' using DBD::File ok 941 - parse 'SELECT CURRENT_TIME(2)' using DBD::File ok 942 - parse 'SELECT CURRENT_TIMESTAMP(2)' using DBD::File ok 943 - parse 'SELECT CURTIME(2)' using DBD::File ok 944 - parse 'SELECT NOW(2)' using DBD::File ok 945 - parse 'SELECT UNIX_TIMESTAMP(2)' using DBD::File ok 946 - parse ' /* STRING FUNCTIONS */' using DBD::File ok 947 - parse 'SELECT * FROM foo WHERE ASCII(status) = 65' using DBD::File ok 948 - parse 'SELECT * FROM foo WHERE CHAR(code) = 'A'' using DBD::File ok 949 - parse 'SELECT * FROM foo WHERE CHAR(chr1,chr2,chr3) = 'ABC'' using DBD::File ok 950 - parse 'SELECT * FROM foo WHERE BIT_LENGTH(str) = 27' using DBD::File ok 951 - parse 'SELECT * FROM foo WHERE CHARACTER_LENGTH(str) = 6' using DBD::File ok 952 - parse 'SELECT * FROM foo WHERE CHAR_LENGTH(str) = 6' using DBD::File ok 953 - parse 'SELECT * FROM foo WHERE COALESCE(NULL, status) = 'bar'' using DBD::File ok 954 - parse 'SELECT * FROM foo WHERE NVL(NULL, status) = 'bar'' using DBD::File ok 955 - parse 'SELECT * FROM foo WHERE IFNULL(NULL, status) = 'bar'' using DBD::File ok 956 - parse 'SELECT * FROM foo WHERE CONCAT(str1, str2) = 'bar'' using DBD::File ok 957 - parse 'SELECT * FROM foo WHERE DECODE(color,'White','W','Red','R','B') = 'W'' using DBD::File ok 958 - parse 'SELECT * FROM foo WHERE INSERT(str1, 4, 5, str2) = 'foobarland'' using DBD::File ok 959 - parse 'SELECT * FROM foo WHERE LEFT(phrase) = 'bar'' using DBD::File ok 960 - parse 'SELECT * FROM foo WHERE RIGHT(phrase) = 'bar'' using DBD::File ok 961 - parse 'SELECT * FROM foo WHERE LOCATE(str1, str2) = 2' using DBD::File ok 962 - parse 'SELECT * FROM foo WHERE LOCATE(str1, str2, 3) = 5' using DBD::File ok 963 - parse 'SELECT * FROM foo WHERE POSITION(str1, str2) = 2' using DBD::File ok 964 - parse 'SELECT * FROM foo WHERE POSITION(str1, str2, 3) = 5' using DBD::File ok 965 - parse 'SELECT * FROM foo WHERE LOWER(phrase) = 'bar'' using DBD::File ok 966 - parse 'SELECT * FROM foo WHERE UPPER(phrase) = 'BAR'' using DBD::File ok 967 - parse 'SELECT * FROM foo WHERE LCASE(phrase) = 'BAR'' using DBD::File ok 968 - parse 'SELECT * FROM foo WHERE UCASE(phrase) = 'bar'' using DBD::File ok 969 - parse 'SELECT * FROM foo WHERE LTRIM(str) = 'bar'' using DBD::File ok 970 - parse 'SELECT * FROM foo WHERE RTRIM(str) = 'bar'' using DBD::File ok 971 - parse 'SELECT * FROM foo WHERE OCTET_LENGTH(str) = 12' using DBD::File ok 972 - parse 'SELECT * FROM foo WHERE REGEX(phrase, '/EF/i') = TRUE' using DBD::File ok 973 - parse 'SELECT * FROM foo WHERE REPEAT(status, 3) = 'AAA'' using DBD::File ok 974 - parse 'SELECT * FROM foo WHERE REPLACE(phrase, 's/z(.+)ky//i') = 'bar'' using DBD::File ok 975 - parse 'SELECT * FROM foo WHERE SUBSTITUTE(phrase, 's/z(.+)ky//i') = 'bar'' using DBD::File ok 976 - parse 'SELECT * FROM foo WHERE SOUNDEX(name1, name2) = TRUE' using DBD::File ok 977 - parse 'SELECT * FROM foo WHERE SPACE(num) = ' '' using DBD::File ok 978 - parse 'SELECT * FROM foo WHERE blat = SUBSTRING(bar FROM 3 FOR 6)' using DBD::File ok 979 - parse 'SELECT * FROM foo WHERE blat = SUBSTRING(bar FROM 3)' using DBD::File ok 980 - parse 'SELECT * FROM foo WHERE blat = SUBSTR(bar, 3, 6)' using DBD::File ok 981 - parse 'SELECT * FROM foo WHERE blat = SUBSTR(bar, 3)' using DBD::File ok 982 - parse 'SELECT * FROM foo WHERE blat = TRANSLATE(bar, set1, set2)' using DBD::File ok 983 - parse 'SELECT * FROM foo WHERE TRIM( str ) = 'bar'' using DBD::File ok 984 - parse 'SELECT * FROM foo WHERE TRIM( LEADING FROM str ) = 'bar'' using DBD::File ok 985 - parse 'SELECT * FROM foo WHERE TRIM( TRAILING FROM str ) = 'bar'' using DBD::File ok 986 - parse 'SELECT * FROM foo WHERE TRIM( BOTH FROM str ) = 'bar'' using DBD::File ok 987 - parse 'SELECT * FROM foo WHERE TRIM( LEADING ';' FROM str ) = 'bar'' using DBD::File ok 988 - parse 'SELECT * FROM foo WHERE TRIM( UPPER(phrase) ) = 'bar'' using DBD::File ok 989 - parse 'SELECT * FROM foo WHERE TRIM( LOWER(phrase) ) = 'bar'' using DBD::File ok 990 - parse 'UPDATE foo SET bar='baz', bop=7, bump=bar+8, blat=SUBSTRING(bar FROM 3 FOR 6)' using DBD::File ok 991 - parse ' /* NUMERIC FUNCTIONS */' using DBD::File ok 992 - parse 'SELECT * FROM bar WHERE ABS(-4) = 4' using DBD::File ok 993 - parse 'SELECT * FROM bar WHERE CEILING(-4.5) = -4' using DBD::File ok 994 - parse 'SELECT * FROM bar WHERE CEIL(-4.9) = -4' using DBD::File ok 995 - parse 'SELECT * FROM bar WHERE FLOOR(4.999999999999) = 4' using DBD::File ok 996 - parse 'SELECT * FROM bar WHERE LOG(6) = LOG10(6)' using DBD::File ok 997 - parse 'SELECT * FROM bar WHERE LN(1) = EXP(1)' using DBD::File ok 998 - parse 'SELECT * FROM bar WHERE MOD(8, 5) = 3' using DBD::File ok 999 - parse 'SELECT * FROM bar WHERE POWER(2, 4) = 16' using DBD::File ok 1000 - parse 'SELECT * FROM bar WHERE POW(2, 4) = 16' using DBD::File ok 1001 - parse 'SELECT * FROM bar WHERE RAND(2) = 0' using DBD::File ok 1002 - parse 'SELECT * FROM bar WHERE RAND(2, UNIX_TIMESTAMP()) = 0' using DBD::File ok 1003 - parse 'SELECT * FROM bar WHERE ROUND(4.999999999999) = 5' using DBD::File ok 1004 - parse 'SELECT * FROM bar WHERE ROUND(4.542222222222, 1) = 4.5' using DBD::File ok 1005 - parse 'SELECT * FROM bar WHERE SIGN(-25.5) = -1' using DBD::File ok 1006 - parse 'SELECT * FROM bar WHERE SIGN(53645) = 1' using DBD::File ok 1007 - parse 'SELECT * FROM bar WHERE SIGN(0) = 0' using DBD::File ok 1008 - parse 'SELECT * FROM bar WHERE SIGN(NULL) = NULL' using DBD::File ok 1009 - parse 'SELECT * FROM bar WHERE SQRT(64) = 8' using DBD::File ok 1010 - parse 'SELECT * FROM bar WHERE TRUNCATE(4.999999999999) = 4' using DBD::File ok 1011 - parse 'SELECT * FROM bar WHERE TRUNC(-4.9) = -4' using DBD::File ok 1012 - parse 'SELECT * FROM bar WHERE TRUNCATE(4.934, 1) = 4.9' using DBD::File ok 1013 - parse 'SELECT * FROM bar WHERE TRUNC(-4.99999, 1) = -4.9' using DBD::File ok 1014 - parse ' /* TRIGONOMETRIC FUNCTIONS */' using DBD::File ok 1015 - parse 'SELECT * FROM test WHERE ACOS(x)' using DBD::File ok 1016 - parse 'SELECT * FROM test WHERE ACOSEC(x)' using DBD::File ok 1017 - parse 'SELECT * FROM test WHERE ACOSECH(x)' using DBD::File ok 1018 - parse 'SELECT * FROM test WHERE ACOSH(x)' using DBD::File ok 1019 - parse 'SELECT * FROM test WHERE ACOT(x)' using DBD::File ok 1020 - parse 'SELECT * FROM test WHERE ACOTAN(x)' using DBD::File ok 1021 - parse 'SELECT * FROM test WHERE ACOTANH(x)' using DBD::File ok 1022 - parse 'SELECT * FROM test WHERE ACOTH(x)' using DBD::File ok 1023 - parse 'SELECT * FROM test WHERE ACSC(x)' using DBD::File ok 1024 - parse 'SELECT * FROM test WHERE ACSCH(x)' using DBD::File ok 1025 - parse 'SELECT * FROM test WHERE ASEC(x)' using DBD::File ok 1026 - parse 'SELECT * FROM test WHERE ASECH(x)' using DBD::File ok 1027 - parse 'SELECT * FROM test WHERE ASIN(x)' using DBD::File ok 1028 - parse 'SELECT * FROM test WHERE ASINH(x)' using DBD::File ok 1029 - parse 'SELECT * FROM test WHERE ATAN(x)' using DBD::File ok 1030 - parse 'SELECT * FROM test WHERE ATAN2(y, x)' using DBD::File ok 1031 - parse 'SELECT * FROM test WHERE ATANH(x)' using DBD::File ok 1032 - parse 'SELECT * FROM test WHERE COS(x)' using DBD::File ok 1033 - parse 'SELECT * FROM test WHERE COSEC(x)' using DBD::File ok 1034 - parse 'SELECT * FROM test WHERE COSECH(x)' using DBD::File ok 1035 - parse 'SELECT * FROM test WHERE COSH(x)' using DBD::File ok 1036 - parse 'SELECT * FROM test WHERE COT(x)' using DBD::File ok 1037 - parse 'SELECT * FROM test WHERE COTAN(x)' using DBD::File ok 1038 - parse 'SELECT * FROM test WHERE COTANH(x)' using DBD::File ok 1039 - parse 'SELECT * FROM test WHERE COTH(x)' using DBD::File ok 1040 - parse 'SELECT * FROM test WHERE CSC(x)' using DBD::File ok 1041 - parse 'SELECT * FROM test WHERE CSCH(x)' using DBD::File ok 1042 - parse 'SELECT * FROM test WHERE DEG2DEG(deg)' using DBD::File ok 1043 - parse 'SELECT * FROM test WHERE RAD2RAD(rad)' using DBD::File ok 1044 - parse 'SELECT * FROM test WHERE GRAD2GRAD(grad)' using DBD::File ok 1045 - parse 'SELECT * FROM test WHERE DEG2GRAD(deg)' using DBD::File ok 1046 - parse 'SELECT * FROM test WHERE DEG2RAD(deg)' using DBD::File ok 1047 - parse 'SELECT * FROM test WHERE GRAD2DEG(grad)' using DBD::File ok 1048 - parse 'SELECT * FROM test WHERE GRAD2RAD(grad)' using DBD::File ok 1049 - parse 'SELECT * FROM test WHERE RAD2DEG(rad)' using DBD::File ok 1050 - parse 'SELECT * FROM test WHERE RAD2GRAD(rad)' using DBD::File ok 1051 - parse 'SELECT * FROM test WHERE DEGREES(rad)' using DBD::File ok 1052 - parse 'SELECT * FROM test WHERE RADIANS(deg)' using DBD::File ok 1053 - parse 'SELECT * FROM test WHERE DEG2DEG(deg, TRUE)' using DBD::File ok 1054 - parse 'SELECT * FROM test WHERE RAD2RAD(rad, TRUE)' using DBD::File ok 1055 - parse 'SELECT * FROM test WHERE GRAD2GRAD(grad, TRUE)' using DBD::File ok 1056 - parse 'SELECT * FROM test WHERE DEG2GRAD(deg, TRUE)' using DBD::File ok 1057 - parse 'SELECT * FROM test WHERE DEG2RAD(deg, TRUE)' using DBD::File ok 1058 - parse 'SELECT * FROM test WHERE GRAD2DEG(grad, TRUE)' using DBD::File ok 1059 - parse 'SELECT * FROM test WHERE GRAD2RAD(grad, TRUE)' using DBD::File ok 1060 - parse 'SELECT * FROM test WHERE RAD2DEG(rad, TRUE)' using DBD::File ok 1061 - parse 'SELECT * FROM test WHERE RAD2GRAD(rad, TRUE)' using DBD::File ok 1062 - parse 'SELECT * FROM test WHERE DEGREES(rad, TRUE)' using DBD::File ok 1063 - parse 'SELECT * FROM test WHERE RADIANS(deg, TRUE)' using DBD::File ok 1064 - parse 'SELECT * FROM test WHERE PI()' using DBD::File ok 1065 - parse 'SELECT * FROM test WHERE SEC(x)' using DBD::File ok 1066 - parse 'SELECT * FROM test WHERE SECH(x)' using DBD::File ok 1067 - parse 'SELECT * FROM test WHERE SIN(x)' using DBD::File ok 1068 - parse 'SELECT * FROM test WHERE SINH(x)' using DBD::File ok 1069 - parse 'SELECT * FROM test WHERE TAN(x)' using DBD::File ok 1070 - parse 'SELECT * FROM test WHERE TANH(x)' using DBD::File ok 1071 - parse ' /* SYSTEM FUNCTIONS */' using DBD::File ok 1072 - parse 'SELECT * FROM ztable WHERE DBNAME() = foobar' using DBD::File ok 1073 - parse 'SELECT * FROM ztable WHERE USERNAME() = foobar' using DBD::File ok 1074 - parse 'SELECT * FROM ztable WHERE USER() = foobar' using DBD::File ok 1075 - parse ' /* TABLE NAME ALIASES */' using DBD::File ok 1076 - parse 'SELECT * FROM test as T1' using DBD::File ok 1077 - parse 'SELECT * FROM test T1' using DBD::File ok 1078 - parse 'SELECT T1.id, T2.num FROM test as T1 JOIN test2 as T2 USING(id)' using DBD::File ok 1079 - parse 'SELECT id FROM test as T1 WHERE T1.num < 7' using DBD::File ok 1080 - parse 'SELECT id FROM test as T1 ORDER BY T1.num' using DBD::File ok 1081 - parse 'SELECT a.x,b.y FROM foo AS a, bar b WHERE a.baz = b.bop ORDER BY a.blat' using DBD::File ok 1082 - parse ' /* NUMERIC EXPRESSIONS */' using DBD::File ok 1083 - parse 'SELECT * FROM foo WHERE 1 = 0 AND baz < (6*foo+11-r)' using DBD::File ok 1084 - parse ' /* CASE OF IDENTIFIERS */' using DBD::File ok 1085 - parse 'SELECT ID, phRase FROM tEst AS tE WHERE te.id < 3 ORDER BY TE.phrasE' using DBD::File ok 1086 - parse ' /* PARENS */' using DBD::File ok 1087 - parse 'SELECT * FROM ztable WHERE NOT data IN ('one','two')' using DBD::File ok 1088 - parse 'SELECT * from ztable WHERE (aaa > 'AAA')' using DBD::File ok 1089 - parse 'SELECT * from ztable WHERE sev = 50 OR sev = 60' using DBD::File ok 1090 - parse 'SELECT * from ztable WHERE (sev = 50 OR sev = 60)' using DBD::File ok 1091 - parse 'SELECT * from ztable WHERE sev IN (50,60)' using DBD::File ok 1092 - parse 'SELECT * from ztable WHERE rc > 200 AND ( sev IN(50,60) )' using DBD::File ok 1093 - parse 'SELECT * FROM ztable WHERE data NOT IN ('one','two')' using DBD::File ok 1094 - parse 'SELECT * from ztable WHERE (aaa > 'AAA') AND (zzz < 'ZZZ')' using DBD::File ok 1095 - parse 'SELECT * from ztable WHERE (sev IN(50,60))' using DBD::File ok 1096 - parse ' /* NOT */' using DBD::File ok 1097 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND bop = 7 OR NOT blat = bar' using DBD::File ok 1098 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND NOT bop = 7 OR NOT blat = bar' using DBD::File ok 1099 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND NOT bop = 7 OR blat IS NOT NULL' using DBD::File ok 1100 - parse ' /* IN */' using DBD::File ok 1101 - parse 'SELECT * FROM bar WHERE foo IN ('aa','ab','ba','bb')' using DBD::File ok 1102 - parse 'SELECT * FROM bar WHERE foo IN (3.14,2.72,1.41,9.81)' using DBD::File ok 1103 - parse 'SELECT * FROM bar WHERE foo NOT IN ('aa','ab','ba','bb')' using DBD::File ok 1104 - parse 'SELECT * FROM bar WHERE foo NOT IN (3.14,2.72,1.41,9.81)' using DBD::File ok 1105 - parse ' /* BETWEEN */' using DBD::File ok 1106 - parse 'SELECT * FROM bar WHERE foo BETWEEN ('aa','bb')' using DBD::File ok 1107 - parse 'SELECT * FROM bar WHERE foo BETWEEN (1.41,9.81)' using DBD::File ok 1108 - parse 'SELECT * FROM bar WHERE foo NOT BETWEEN ('aa','bb')' using DBD::File ok 1109 - parse 'SELECT * FROM bar WHERE foo NOT BETWEEN (1.41,9.81)' using DBD::File not ok 1110 - parse 'UPDATE foo SET bar=REPEAT(status, BIT_LENGTH(str)), bop=7, bump=bar+POSITION(str1, str2), blat=SUBSTRING(bar FROM ASCII(status) FOR CHAR_LENGTH(str))' using DBD::File # TODO Analyze failures # Failed (TODO) test 'parse 'UPDATE foo SET bar=REPEAT(status, BIT_LENGTH(str)), bop=7, bump=bar+POSITION(str1, str2), blat=SUBSTRING(bar FROM ASCII(status) FOR CHAR_LENGTH(str))' using DBD::File' # at t/01prepare.t line 312. # Incomplete SET clause! not ok 1111 - parse 'SELECT * FROM bar WHERE EXP(1) = SINH(1)+COSH(1)' using DBD::File # TODO Analyze failures # Failed (TODO) test 'parse 'SELECT * FROM bar WHERE EXP(1) = SINH(1)+COSH(1)' using DBD::File' # at t/01prepare.t line 312. # # Execution ERROR: Unknown predicate '{$VAR1 = {}; # }' called from /Users/fly1600/cpanfly-5.16/var/megalib/DBI/DBD/SqlEngine.pm at 335. # not ok 1112 - parse 'SELECT * FROM bar WHERE LOG(8, 2) = LOG10(8) / LOG10(2)' using DBD::File # TODO Analyze failures # Failed (TODO) test 'parse 'SELECT * FROM bar WHERE LOG(8, 2) = LOG10(8) / LOG10(2)' using DBD::File' # at t/01prepare.t line 312. # # Execution ERROR: Unknown predicate '{$VAR1 = {}; # }' called from /Users/fly1600/cpanfly-5.16/var/megalib/DBI/DBD/SqlEngine.pm at 335. # ok 1113 - $sth->new ok 1114 - $sth->command ok 1115 - $sth->params ok 1116 - $sth->tables ok 1117 - $sth->where()->op ok 1118 - $sth->where()->left ok 1119 - $sth->where()->left->left ok 1120 - $sth->where()->left->right ok 1121 - $sth->limit ok 1122 - $sth->offset # Command SELECT # Num Pholders 1 # Columns # Tables SQL::Statement::Table=HASH(0x100ca8878),SQL::Statement::Table=HASH(0x100c56248) # Where op AND # Limit 2 # Offset 5 # Order Cols f,g ok 1123 - $stmt->row_values() ok 1124 - $stmt->row_values(0) ok 1125 - $stmt->row_values(0,1) ok 1126 - structure ok 1127 - command ok 1128 - distinct 1..1128 ok t/02execute.t ... # # Using required: # # SQL::Statement: 1.409 # # Using recommended: # # DBD::CSV: 0.48 # # DBD::DBM: 0.08 # # DBD::File: 0.44 # # DBI: 1.634 # # MLDBM: 2.05 # Running tests for SQL::Statement ok 1 - CREATE Tmp ok 2 - placeholder insert with named cols ok 3 - placeholder insert without named cols ok 4 - placeholder delete ok 5 - placeholder update ok 6 - placeholder update ok 7 - multiline insert ok 8 - prepare 'SELECT id,phrase FROM Tmp ORDER BY id' ok 9 - verify table contents ok 10 - prepare 'SELECT id,phrase FROM Tmp WHERE (id?) and phrase LIKE ? ORDER BY id' ok 11 - verify placeholder processing ok 12 - DROP TABLE ok 13 - CREATE ok 14 - INSERT ok 15 - INSERT ok 16 - INSERT ok 17 - UPDATE ok 18 - DELETE ok 19 - prepare 'SELECT UPPER('a') AS A,phrase FROM phrase' ok 20 - SELECT ok 21 - COUNT * ok 22 - DROP TEMP TABLE ok 23 - COMPUTED COLUMNS IN SELECT LIST ok 24 - CREATE FUNCTION from script # < CREATE TEMP TABLE a (b INT, c CHAR)> ok 25 - $stmt->execute " CREATE TEMP TABLE a (b INT, c CHAR)" (CREATE) # < INSERT INTO a VALUES(1,'abc')> ok 26 - $stmt->execute " INSERT INTO a VALUES(1,'abc')" (INSERT) # < INSERT INTO a VALUES(2,'efg')> ok 27 - $stmt->execute " INSERT INTO a VALUES(2,'efg')" (INSERT) # < INSERT INTO a VALUES(3,'hij')> ok 28 - $stmt->execute " INSERT INTO a VALUES(3,'hij')" (INSERT) # < INSERT INTO a VALUES(4,'klm')> ok 29 - $stmt->execute " INSERT INTO a VALUES(4,'klm')" (INSERT) # < INSERT INTO a VALUES(5,'nmo')> ok 30 - $stmt->execute " INSERT INTO a VALUES(5,'nmo')" (INSERT) # < INSERT INTO a VALUES(6,'pqr')> ok 31 - $stmt->execute " INSERT INTO a VALUES(6,'pqr')" (INSERT) # < INSERT INTO a VALUES(7,'stu')> ok 32 - $stmt->execute " INSERT INTO a VALUES(7,'stu')" (INSERT) # < INSERT INTO a VALUES(8,'vwx')> ok 33 - $stmt->execute " INSERT INTO a VALUES(8,'vwx')" (INSERT) # < INSERT INTO a VALUES(9,'yz')> ok 34 - $stmt->execute " INSERT INTO a VALUES(9,'yz')" (INSERT) # < SELECT b,c FROM a WHERE c LIKE '%b%' ORDER BY c DESC"> ok 35 - $stmt->execute " SELECT b,c FROM a WHERE c LIKE '%b%' ORDER BY c DESC"" (SELECT) ok 36 - $stmt->where_hash ok 37 - $stmt->columns ok 38 - $stmt->column_names ok 39 - $stmt->order ok 40 - $stmt->fetch ok 41 - $stmt->execute "SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz')" (SELECT) ok 42 - SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz') ok 43 - $stmt->execute "SELECT b,c FROM a WHERE NOT b IN (2,3,5,7)" (SELECT) ok 44 - SELECT b,c FROM a WHERE NOT b IN (2,3,5,7) ok 45 - $stmt->execute "SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo')" (SELECT) ok 46 - SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo') ok 47 - $stmt->execute "SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz')" (SELECT) ok 48 - SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz') ok 49 - $stmt->execute "SELECT b,c FROM a WHERE b NOT BETWEEN (5,7)" (SELECT) ok 50 - SELECT b,c FROM a WHERE b NOT BETWEEN (5,7) ok 51 - $stmt->execute "SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo')" (SELECT) ok 52 - SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo') ok 53 - $stmt->execute "SELECT b,c FROM a WHERE NOT b BETWEEN (5,7)" (SELECT) ok 54 - SELECT b,c FROM a WHERE NOT b BETWEEN (5,7) ok 55 - $stmt->execute "SELECT b,c FROM a WHERE b BETWEEN (5,7)" (SELECT) ok 56 - SELECT b,c FROM a WHERE b BETWEEN (5,7) ok 57 - $stmt->execute "SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo')" (SELECT) ok 58 - SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo') ok 59 - $stmt->execute "SELECT b,c FROM a WHERE b NOT IN (2,3,5,7)" (SELECT) ok 60 - SELECT b,c FROM a WHERE b NOT IN (2,3,5,7) ok 61 - $stmt->execute "SELECT b,c FROM a WHERE c NOT IN ('abc','klm','pqr','vwx','yz')" (SELECT) ok 62 - SELECT b,c FROM a WHERE c NOT IN ('abc','klm','pqr','vwx','yz') ok 63 - $stmt->execute "SELECT b,c FROM a WHERE b IN (2,3,5,7)" (SELECT) ok 64 - SELECT b,c FROM a WHERE b IN (2,3,5,7) ok 65 - CREATE FUNCTION from module ok 66 - CREATE FUNCTION from module with argument ok 67 - LOAD FUNCTIONS ok 68 - CREATE pauli test table ok 69 - UPDATE with placeholders ok 70 - UPDATE with placeholder updates correct # Running tests for DBD::CSV ok 71 - CREATE Tmp ok 72 - placeholder insert with named cols ok 73 - placeholder insert without named cols ok 74 - placeholder delete ok 75 - placeholder update ok 76 - placeholder update ok 77 - multiline insert ok 78 - prepare 'SELECT id,phrase FROM Tmp ORDER BY id' ok 79 - verify table contents ok 80 - prepare 'SELECT id,phrase FROM Tmp WHERE (id?) and phrase LIKE ? ORDER BY id' ok 81 - verify placeholder processing ok 82 - DROP TABLE ok 83 - CREATE ok 84 - INSERT ok 85 - INSERT ok 86 - INSERT ok 87 - UPDATE ok 88 - DELETE ok 89 - prepare 'SELECT UPPER('a') AS A,phrase FROM phrase' ok 90 - SELECT ok 91 - COUNT * ok 92 - DROP TABLE ok 93 - COMPUTED COLUMNS IN SELECT LIST ok 94 - CREATE FUNCTION from script # < CREATE TABLE a (b INT, c CHAR)> ok 95 - $stmt->execute " CREATE TABLE a (b INT, c CHAR)" (CREATE) # < INSERT INTO a VALUES(1,'abc')> ok 96 - $stmt->execute " INSERT INTO a VALUES(1,'abc')" (INSERT) # < INSERT INTO a VALUES(2,'efg')> ok 97 - $stmt->execute " INSERT INTO a VALUES(2,'efg')" (INSERT) # < INSERT INTO a VALUES(3,'hij')> ok 98 - $stmt->execute " INSERT INTO a VALUES(3,'hij')" (INSERT) # < INSERT INTO a VALUES(4,'klm')> ok 99 - $stmt->execute " INSERT INTO a VALUES(4,'klm')" (INSERT) # < INSERT INTO a VALUES(5,'nmo')> ok 100 - $stmt->execute " INSERT INTO a VALUES(5,'nmo')" (INSERT) # < INSERT INTO a VALUES(6,'pqr')> ok 101 - $stmt->execute " INSERT INTO a VALUES(6,'pqr')" (INSERT) # < INSERT INTO a VALUES(7,'stu')> ok 102 - $stmt->execute " INSERT INTO a VALUES(7,'stu')" (INSERT) # < INSERT INTO a VALUES(8,'vwx')> ok 103 - $stmt->execute " INSERT INTO a VALUES(8,'vwx')" (INSERT) # < INSERT INTO a VALUES(9,'yz')> ok 104 - $stmt->execute " INSERT INTO a VALUES(9,'yz')" (INSERT) # < SELECT b,c FROM a WHERE c LIKE '%b%' ORDER BY c DESC"> ok 105 - $stmt->execute " SELECT b,c FROM a WHERE c LIKE '%b%' ORDER BY c DESC"" (SELECT) ok 106 - $stmt->where_hash ok 107 - $stmt->columns ok 108 - $stmt->column_names ok 109 - $stmt->order ok 110 - $stmt->fetch ok 111 - $stmt->execute "SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz')" (SELECT) ok 112 - SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz') ok 113 - $stmt->execute "SELECT b,c FROM a WHERE NOT b IN (2,3,5,7)" (SELECT) ok 114 - SELECT b,c FROM a WHERE NOT b IN (2,3,5,7) ok 115 - $stmt->execute "SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo')" (SELECT) ok 116 - SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo') ok 117 - $stmt->execute "SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz')" (SELECT) ok 118 - SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz') ok 119 - $stmt->execute "SELECT b,c FROM a WHERE b NOT BETWEEN (5,7)" (SELECT) ok 120 - SELECT b,c FROM a WHERE b NOT BETWEEN (5,7) ok 121 - $stmt->execute "SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo')" (SELECT) ok 122 - SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo') ok 123 - $stmt->execute "SELECT b,c FROM a WHERE NOT b BETWEEN (5,7)" (SELECT) ok 124 - SELECT b,c FROM a WHERE NOT b BETWEEN (5,7) ok 125 - $stmt->execute "SELECT b,c FROM a WHERE b BETWEEN (5,7)" (SELECT) ok 126 - SELECT b,c FROM a WHERE b BETWEEN (5,7) ok 127 - $stmt->execute "SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo')" (SELECT) ok 128 - SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo') ok 129 - $stmt->execute "SELECT b,c FROM a WHERE b NOT IN (2,3,5,7)" (SELECT) ok 130 - SELECT b,c FROM a WHERE b NOT IN (2,3,5,7) ok 131 - $stmt->execute "SELECT b,c FROM a WHERE c NOT IN ('abc','klm','pqr','vwx','yz')" (SELECT) ok 132 - SELECT b,c FROM a WHERE c NOT IN ('abc','klm','pqr','vwx','yz') ok 133 - $stmt->execute "SELECT b,c FROM a WHERE b IN (2,3,5,7)" (SELECT) ok 134 - SELECT b,c FROM a WHERE b IN (2,3,5,7) ok 135 - CREATE FUNCTION from module ok 136 - CREATE FUNCTION from module with argument ok 137 - LOAD FUNCTIONS ok 138 - CREATE pauli test table ok 139 - UPDATE with placeholders ok 140 - UPDATE with placeholder updates correct # Running tests for DBD::File ok 141 - CREATE Tmp ok 142 - placeholder insert with named cols ok 143 - placeholder insert without named cols ok 144 - placeholder delete ok 145 - placeholder update ok 146 - placeholder update ok 147 - multiline insert ok 148 - prepare 'SELECT id,phrase FROM Tmp ORDER BY id' ok 149 - verify table contents ok 150 - prepare 'SELECT id,phrase FROM Tmp WHERE (id?) and phrase LIKE ? ORDER BY id' ok 151 - verify placeholder processing ok 152 - DROP TABLE ok 153 - CREATE ok 154 - INSERT ok 155 - INSERT ok 156 - INSERT ok 157 - UPDATE ok 158 - DELETE ok 159 - prepare 'SELECT UPPER('a') AS A,phrase FROM phrase' ok 160 - SELECT ok 161 - COUNT * ok 162 - DROP TEMP TABLE ok 163 - COMPUTED COLUMNS IN SELECT LIST ok 164 - CREATE FUNCTION from script # < CREATE TEMP TABLE a (b INT, c CHAR)> ok 165 - $stmt->execute " CREATE TEMP TABLE a (b INT, c CHAR)" (CREATE) # < INSERT INTO a VALUES(1,'abc')> ok 166 - $stmt->execute " INSERT INTO a VALUES(1,'abc')" (INSERT) # < INSERT INTO a VALUES(2,'efg')> ok 167 - $stmt->execute " INSERT INTO a VALUES(2,'efg')" (INSERT) # < INSERT INTO a VALUES(3,'hij')> ok 168 - $stmt->execute " INSERT INTO a VALUES(3,'hij')" (INSERT) # < INSERT INTO a VALUES(4,'klm')> ok 169 - $stmt->execute " INSERT INTO a VALUES(4,'klm')" (INSERT) # < INSERT INTO a VALUES(5,'nmo')> ok 170 - $stmt->execute " INSERT INTO a VALUES(5,'nmo')" (INSERT) # < INSERT INTO a VALUES(6,'pqr')> ok 171 - $stmt->execute " INSERT INTO a VALUES(6,'pqr')" (INSERT) # < INSERT INTO a VALUES(7,'stu')> ok 172 - $stmt->execute " INSERT INTO a VALUES(7,'stu')" (INSERT) # < INSERT INTO a VALUES(8,'vwx')> ok 173 - $stmt->execute " INSERT INTO a VALUES(8,'vwx')" (INSERT) # < INSERT INTO a VALUES(9,'yz')> ok 174 - $stmt->execute " INSERT INTO a VALUES(9,'yz')" (INSERT) # < SELECT b,c FROM a WHERE c LIKE '%b%' ORDER BY c DESC"> ok 175 - $stmt->execute " SELECT b,c FROM a WHERE c LIKE '%b%' ORDER BY c DESC"" (SELECT) ok 176 - $stmt->where_hash ok 177 - $stmt->columns ok 178 - $stmt->column_names ok 179 - $stmt->order ok 180 - $stmt->fetch ok 181 - $stmt->execute "SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz')" (SELECT) ok 182 - SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz') ok 183 - $stmt->execute "SELECT b,c FROM a WHERE NOT b IN (2,3,5,7)" (SELECT) ok 184 - SELECT b,c FROM a WHERE NOT b IN (2,3,5,7) ok 185 - $stmt->execute "SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo')" (SELECT) ok 186 - SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo') ok 187 - $stmt->execute "SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz')" (SELECT) ok 188 - SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz') ok 189 - $stmt->execute "SELECT b,c FROM a WHERE b NOT BETWEEN (5,7)" (SELECT) ok 190 - SELECT b,c FROM a WHERE b NOT BETWEEN (5,7) ok 191 - $stmt->execute "SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo')" (SELECT) ok 192 - SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo') ok 193 - $stmt->execute "SELECT b,c FROM a WHERE NOT b BETWEEN (5,7)" (SELECT) ok 194 - SELECT b,c FROM a WHERE NOT b BETWEEN (5,7) ok 195 - $stmt->execute "SELECT b,c FROM a WHERE b BETWEEN (5,7)" (SELECT) ok 196 - SELECT b,c FROM a WHERE b BETWEEN (5,7) ok 197 - $stmt->execute "SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo')" (SELECT) ok 198 - SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo') ok 199 - $stmt->execute "SELECT b,c FROM a WHERE b NOT IN (2,3,5,7)" (SELECT) ok 200 - SELECT b,c FROM a WHERE b NOT IN (2,3,5,7) ok 201 - $stmt->execute "SELECT b,c FROM a WHERE c NOT IN ('abc','klm','pqr','vwx','yz')" (SELECT) ok 202 - SELECT b,c FROM a WHERE c NOT IN ('abc','klm','pqr','vwx','yz') ok 203 - $stmt->execute "SELECT b,c FROM a WHERE b IN (2,3,5,7)" (SELECT) ok 204 - SELECT b,c FROM a WHERE b IN (2,3,5,7) ok 205 - CREATE FUNCTION from module ok 206 - CREATE FUNCTION from module with argument ok 207 - LOAD FUNCTIONS ok 208 - CREATE pauli test table ok 209 - UPDATE with placeholders ok 210 - UPDATE with placeholder updates correct # Running tests for DBD::DBM ok 211 - CREATE Tmp ok 212 - placeholder insert with named cols ok 213 - placeholder insert without named cols ok 214 - placeholder delete ok 215 - placeholder update ok 216 - placeholder update ok 217 - multiline insert ok 218 - prepare 'SELECT id,phrase FROM Tmp ORDER BY id' ok 219 - verify table contents ok 220 - prepare 'SELECT id,phrase FROM Tmp WHERE (id?) and phrase LIKE ? ORDER BY id' ok 221 - verify placeholder processing ok 222 - DROP TABLE ok 223 - CREATE ok 224 - INSERT ok 225 - INSERT ok 226 - INSERT ok 227 - UPDATE ok 228 - DELETE ok 229 - prepare 'SELECT UPPER('a') AS A,phrase FROM phrase' ok 230 - SELECT ok 231 - COUNT * ok 232 - DROP TABLE ok 233 - COMPUTED COLUMNS IN SELECT LIST ok 234 - CREATE FUNCTION from script # < CREATE TABLE a (b INT, c CHAR)> ok 235 - $stmt->execute " CREATE TABLE a (b INT, c CHAR)" (CREATE) # < INSERT INTO a VALUES(1,'abc')> ok 236 - $stmt->execute " INSERT INTO a VALUES(1,'abc')" (INSERT) # < INSERT INTO a VALUES(2,'efg')> ok 237 - $stmt->execute " INSERT INTO a VALUES(2,'efg')" (INSERT) # < INSERT INTO a VALUES(3,'hij')> ok 238 - $stmt->execute " INSERT INTO a VALUES(3,'hij')" (INSERT) # < INSERT INTO a VALUES(4,'klm')> ok 239 - $stmt->execute " INSERT INTO a VALUES(4,'klm')" (INSERT) # < INSERT INTO a VALUES(5,'nmo')> ok 240 - $stmt->execute " INSERT INTO a VALUES(5,'nmo')" (INSERT) # < INSERT INTO a VALUES(6,'pqr')> ok 241 - $stmt->execute " INSERT INTO a VALUES(6,'pqr')" (INSERT) # < INSERT INTO a VALUES(7,'stu')> ok 242 - $stmt->execute " INSERT INTO a VALUES(7,'stu')" (INSERT) # < INSERT INTO a VALUES(8,'vwx')> ok 243 - $stmt->execute " INSERT INTO a VALUES(8,'vwx')" (INSERT) # < INSERT INTO a VALUES(9,'yz')> ok 244 - $stmt->execute " INSERT INTO a VALUES(9,'yz')" (INSERT) # < SELECT b,c FROM a WHERE c LIKE '%b%' ORDER BY c DESC"> ok 245 - $stmt->execute " SELECT b,c FROM a WHERE c LIKE '%b%' ORDER BY c DESC"" (SELECT) ok 246 - $stmt->where_hash ok 247 - $stmt->columns ok 248 - $stmt->column_names ok 249 - $stmt->order ok 250 - $stmt->fetch ok 251 - $stmt->execute "SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz')" (SELECT) ok 252 - SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz') ok 253 - $stmt->execute "SELECT b,c FROM a WHERE NOT b IN (2,3,5,7)" (SELECT) ok 254 - SELECT b,c FROM a WHERE NOT b IN (2,3,5,7) ok 255 - $stmt->execute "SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo')" (SELECT) ok 256 - SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo') ok 257 - $stmt->execute "SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz')" (SELECT) ok 258 - SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz') ok 259 - $stmt->execute "SELECT b,c FROM a WHERE b NOT BETWEEN (5,7)" (SELECT) ok 260 - SELECT b,c FROM a WHERE b NOT BETWEEN (5,7) ok 261 - $stmt->execute "SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo')" (SELECT) ok 262 - SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo') ok 263 - $stmt->execute "SELECT b,c FROM a WHERE NOT b BETWEEN (5,7)" (SELECT) ok 264 - SELECT b,c FROM a WHERE NOT b BETWEEN (5,7) ok 265 - $stmt->execute "SELECT b,c FROM a WHERE b BETWEEN (5,7)" (SELECT) ok 266 - SELECT b,c FROM a WHERE b BETWEEN (5,7) ok 267 - $stmt->execute "SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo')" (SELECT) ok 268 - SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo') ok 269 - $stmt->execute "SELECT b,c FROM a WHERE b NOT IN (2,3,5,7)" (SELECT) ok 270 - SELECT b,c FROM a WHERE b NOT IN (2,3,5,7) ok 271 - $stmt->execute "SELECT b,c FROM a WHERE c NOT IN ('abc','klm','pqr','vwx','yz')" (SELECT) ok 272 - SELECT b,c FROM a WHERE c NOT IN ('abc','klm','pqr','vwx','yz') ok 273 - $stmt->execute "SELECT b,c FROM a WHERE b IN (2,3,5,7)" (SELECT) ok 274 - SELECT b,c FROM a WHERE b IN (2,3,5,7) ok 275 - CREATE FUNCTION from module ok 276 - CREATE FUNCTION from module with argument ok 277 - LOAD FUNCTIONS ok 278 - CREATE pauli test table ok 279 - UPDATE with placeholders ok 280 - UPDATE with placeholder updates correct 1..280 ok t/03import.t .... # # Using required: # # SQL::Statement: 1.409 # # Using recommended: # # DBD::CSV: 0.48 # # DBD::DBM: 0.08 # # DBD::File: 0.44 # # DBD::SQLite: 1.5 # # DBI: 1.634 # # MLDBM: 2.05 # Running tests for SQL::Statement ok 1 - IMPORT($AoA) ok 2 - IMPORT($AoH) ok 3 # skip Need DBI statement handle - can't use when executing direct ok 4 # skip Need DBI statement handle - can't use when executing direct ok 5 # skip Need DBI statement handle - can't use when executing direct ok 6 # skip Need DBI statement handle - can't use when executing direct ok 7 # skip Need DBI statement handle - can't use when executing direct ok 8 # skip Need DBI statement handle - can't use when executing direct ok 9 # skip Need DBI statement handle - can't use when executing direct ok 10 - SELECT IMPORT($external_sth) ok 11 # skip Need DBI statement handle - can't use when executing direct ok 12 # skip Need DBI statement handle - can't use when executing direct # Running tests for DBD::CSV ok 13 - IMPORT($AoA) ok 14 - IMPORT($AoH) ok 15 - CREATE AS IMPORT($aoh) ok 16 - SELECT FROM IMPORTED($AoH) ok 17 - CREATE AS IMPORT($aoa) ok 18 - SELECT FROM IMPORTED($AoA) ok 19 - CREATE AS SELECT * ok 20 - SELECT FROM "SELECTED(*)" tbl_copy ok 21 - CREATE AS SELECT * with quoted restriction ok 22 - SELECT FROM "SELECTED(*)" tbl_extract ok 23 - IMPORT($internal_sth) ok 24 - SELECT IMPORT($external_sth) ok 25 - CREATE AS IMPORT($sth) ok 26 - SELECT FROM IMPORTED ($external_sth) # Running tests for DBD::File ok 27 - IMPORT($AoA) ok 28 - IMPORT($AoH) ok 29 - CREATE AS IMPORT($aoh) ok 30 - SELECT FROM IMPORTED($AoH) ok 31 - CREATE AS IMPORT($aoa) ok 32 - SELECT FROM IMPORTED($AoA) ok 33 - CREATE AS SELECT * ok 34 - SELECT FROM "SELECTED(*)" tbl_copy ok 35 - CREATE AS SELECT * with quoted restriction ok 36 - SELECT FROM "SELECTED(*)" tbl_extract ok 37 - IMPORT($internal_sth) ok 38 - SELECT IMPORT($external_sth) ok 39 - CREATE AS IMPORT($sth) ok 40 - SELECT FROM IMPORTED ($external_sth) # Running tests for DBD::DBM ok 41 - IMPORT($AoA) ok 42 - IMPORT($AoH) ok 43 - CREATE AS IMPORT($aoh) ok 44 - SELECT FROM IMPORTED($AoH) ok 45 - CREATE AS IMPORT($aoa) ok 46 - SELECT FROM IMPORTED($AoA) ok 47 - CREATE AS SELECT * ok 48 - SELECT FROM "SELECTED(*)" tbl_copy ok 49 - CREATE AS SELECT * with quoted restriction ok 50 - SELECT FROM "SELECTED(*)" tbl_extract ok 51 - IMPORT($internal_sth) ok 52 - SELECT IMPORT($external_sth) ok 53 - CREATE AS IMPORT($sth) ok 54 - SELECT FROM IMPORTED ($external_sth) 1..54 ok t/04idents.t .... # # Using required: # # SQL::Statement: 1.409 # # Using recommended: # # DBD::CSV: 0.48 # # DBD::DBM: 0.08 # # DBD::File: 0.44 # # DBD::SQLite: 1.5 # # DBI: 1.634 # Running tests for SQL::Statement ok 1 - Column Names: select list = * ok 2 - Column Names: select list = named ok 3 - Column Names: select list = aliased ok 4 - Column Names: select list with function ok 5 - Column Names: select list with function = aliased ok 6 - Raw SQL hidden absent from column name [rt.cpan.org \#34121] (camelcased) ok 7 - Raw SQL hidden absent from table name [rt.cpan.org \#34121] (camelcased) ok 8 - Raw SQL hidden absent from column name [rt.cpan.org \#34121] (reserved names) ok 9 - Raw SQL hidden absent from table name [rt.cpan.org \#34121] (reserved names) ok 10 - Raw SQL hidden absent from column name [rt.cpan.org \#34121] (not quoted) ok 11 - Raw SQL hidden absent from table name [rt.cpan.org \#34121] (not quoted) ok 12 - ->{all_cols} structure does not grow beyond control ok 13 - execute for 'lower/lower' ok 14 - lower/lower ok 15 - execute for 'lower/upper' ok 16 - lower/upper ok 17 - execute for 'lower/mixed' ok 18 - lower/mixed ok 19 - execute for 'lower/asterisked' ok 20 - lower/asterisked ok 21 - execute for 'upper/lower' ok 22 - upper/lower ok 23 - execute for 'upper/upper' ok 24 - upper/upper ok 25 - execute for 'upper/mixed' ok 26 - upper/mixed ok 27 - execute for 'upper/asterisked' ok 28 - upper/asterisked ok 29 - execute for 'mixed/lower' ok 30 - mixed/lower ok 31 - execute for 'mixed/upper' ok 32 - mixed/upper ok 33 - execute for 'mixed/mixed' ok 34 - mixed/mixed ok 35 - execute for 'mixed/asterisked' ok 36 - mixed/asterisked ok 37 # skip Need DBI statement handle - can't use when executing direct # Running tests for DBD::CSV ok 38 - Column Names: select list = * ok 39 - Column Names: select list = named ok 40 - Column Names: select list = aliased ok 41 - Column Names: select list with function ok 42 - Column Names: select list with function = aliased ok 43 - Raw SQL hidden absent from column name [rt.cpan.org \#34121] (camelcased) ok 44 - Raw SQL hidden absent from table name [rt.cpan.org \#34121] (camelcased) ok 45 - Raw SQL hidden absent from column name [rt.cpan.org \#34121] (reserved names) ok 46 - Raw SQL hidden absent from table name [rt.cpan.org \#34121] (reserved names) ok 47 - Raw SQL hidden absent from column name [rt.cpan.org \#34121] (not quoted) ok 48 - Raw SQL hidden absent from table name [rt.cpan.org \#34121] (not quoted) ok 49 - ->{all_cols} structure does not grow beyond control ok 50 - execute for 'lower/lower' ok 51 - lower/lower ok 52 - execute for 'lower/upper' ok 53 - lower/upper ok 54 - execute for 'lower/mixed' ok 55 - lower/mixed ok 56 - execute for 'lower/asterisked' ok 57 - lower/asterisked ok 58 - execute for 'upper/lower' ok 59 - upper/lower ok 60 - execute for 'upper/upper' ok 61 - upper/upper ok 62 - execute for 'upper/mixed' ok 63 - upper/mixed ok 64 - execute for 'upper/asterisked' ok 65 - upper/asterisked ok 66 - execute for 'mixed/lower' ok 67 - mixed/lower ok 68 - execute for 'mixed/upper' ok 69 - mixed/upper ok 70 - execute for 'mixed/mixed' ok 71 - mixed/mixed ok 72 - execute for 'mixed/asterisked' ok 73 - mixed/asterisked ok 74 - imported table : lower ok 75 - imported table : upper ok 76 - imported table : mixed ok 77 - imported table : asterisked # Running tests for DBD::DBM ok 78 - Column Names: select list = * ok 79 - Column Names: select list = named ok 80 - Column Names: select list = aliased ok 81 - Column Names: select list with function ok 82 - Column Names: select list with function = aliased ok 83 - Raw SQL hidden absent from column name [rt.cpan.org \#34121] (camelcased) ok 84 - Raw SQL hidden absent from table name [rt.cpan.org \#34121] (camelcased) ok 85 - Raw SQL hidden absent from column name [rt.cpan.org \#34121] (reserved names) ok 86 - Raw SQL hidden absent from table name [rt.cpan.org \#34121] (reserved names) ok 87 - Raw SQL hidden absent from column name [rt.cpan.org \#34121] (not quoted) ok 88 - Raw SQL hidden absent from table name [rt.cpan.org \#34121] (not quoted) ok 89 - ->{all_cols} structure does not grow beyond control ok 90 - execute for 'lower/lower' ok 91 - lower/lower ok 92 - execute for 'lower/upper' ok 93 - lower/upper ok 94 - execute for 'lower/mixed' ok 95 - lower/mixed ok 96 - execute for 'lower/asterisked' ok 97 - lower/asterisked ok 98 - execute for 'upper/lower' ok 99 - upper/lower ok 100 - execute for 'upper/upper' ok 101 - upper/upper ok 102 - execute for 'upper/mixed' ok 103 - upper/mixed ok 104 - execute for 'upper/asterisked' ok 105 - upper/asterisked ok 106 - execute for 'mixed/lower' ok 107 - mixed/lower ok 108 - execute for 'mixed/upper' ok 109 - mixed/upper ok 110 - execute for 'mixed/mixed' ok 111 - mixed/mixed ok 112 - execute for 'mixed/asterisked' ok 113 - mixed/asterisked ok 114 - imported table : lower ok 115 - imported table : upper ok 116 - imported table : mixed ok 117 - imported table : asterisked # Running tests for DBD::File ok 118 - Column Names: select list = * ok 119 - Column Names: select list = named ok 120 - Column Names: select list = aliased ok 121 - Column Names: select list with function ok 122 - Column Names: select list with function = aliased ok 123 - Raw SQL hidden absent from column name [rt.cpan.org \#34121] (camelcased) ok 124 - Raw SQL hidden absent from table name [rt.cpan.org \#34121] (camelcased) ok 125 - Raw SQL hidden absent from column name [rt.cpan.org \#34121] (reserved names) ok 126 - Raw SQL hidden absent from table name [rt.cpan.org \#34121] (reserved names) ok 127 - Raw SQL hidden absent from column name [rt.cpan.org \#34121] (not quoted) ok 128 - Raw SQL hidden absent from table name [rt.cpan.org \#34121] (not quoted) ok 129 - ->{all_cols} structure does not grow beyond control ok 130 - execute for 'lower/lower' ok 131 - lower/lower ok 132 - execute for 'lower/upper' ok 133 - lower/upper ok 134 - execute for 'lower/mixed' ok 135 - lower/mixed ok 136 - execute for 'lower/asterisked' ok 137 - lower/asterisked ok 138 - execute for 'upper/lower' ok 139 - upper/lower ok 140 - execute for 'upper/upper' ok 141 - upper/upper ok 142 - execute for 'upper/mixed' ok 143 - upper/mixed ok 144 - execute for 'upper/asterisked' ok 145 - upper/asterisked ok 146 - execute for 'mixed/lower' ok 147 - mixed/lower ok 148 - execute for 'mixed/upper' ok 149 - mixed/upper ok 150 - execute for 'mixed/mixed' ok 151 - mixed/mixed ok 152 - execute for 'mixed/asterisked' ok 153 - mixed/asterisked ok 154 - imported table : lower ok 155 - imported table : upper ok 156 - imported table : mixed ok 157 - imported table : asterisked 1..157 ok t/05simple.t .... # # Using required: # # SQL::Statement: 1.409 # # Using recommended: # # DBD::CSV: 0.48 # # DBD::DBM: 0.08 # # DBD::File: 0.44 # # DBI: 1.634 # # MLDBM: 2.05 # Running tests for SQL::Statement ok 1 - prepare using 'SQL::Statement' ok 21 - execute using 'SQL::Statement' 2nd time ok 24 - execute using 'SQL::Statement' ok 30 - execute using 'SQL::Statement' 2nd time ok 33 - execute using 'SQL::Statement' ok 49 - execute using 'SQL::Statement' 2nd time ok 52 - execute using 'SQL::Statement' ok 67 - execute using 'SQL::Statement' 2nd time ok 70 - execute using 'SQL::Statement' ok 77 - execute == 1 using 'SQL::Statement' ok 79 - SELECT results for SELECT COUNT(*) FROM multi_fruit using SQL::Statement ok 80 - execute == 1 using 'SQL::Statement' ok 82 - SELECT results for SELECT COUNT(*) FROM multi_fruit using 'SQL::Statement' 2nd time ok 83 - prepare using 'SQL::Statement' ok 84 - execute using 'SQL::Statement' ok 85 - execute(DROP TABLE multi_fruit) == -1 using 'SQL::Statement' ok 86 - prepare using 'SQL::Statement' ok 87 - prepare using 'SQL::Statement' ok 97 - execute using 'SQL::Statement' 2nd time ok 100 - execute using 'SQL::Statement' ok 105 - execute using 'SQL::Statement' 2nd time ok 108 - execute using 'SQL::Statement' ok 113 - execute using 'SQL::Statement' 2nd time ok 116 - execute using 'SQL::Statement' ok 121 - execute using 'SQL::Statement' 2nd time ok 124 - execute using 'SQL::Statement' ok 129 - execute using 'SQL::Statement' 2nd time ok 132 - execute using 'SQL::Statement' ok 137 - execute using 'SQL::Statement' 2nd time ok 140 - execute using 'SQL::Statement' ok 145 - execute using 'SQL::Statement' 2nd time ok 148 - execute using 'SQL::Statement' ok 153 - execute using 'SQL::Statement' 2nd time ok 156 - execute using 'DBD::CSV' ok 162 - prepare using 'DBD::CSV' ok 163 - execute using 'DBD::CSV' ok 164 - execute(DROP TABLE IF EXISTS multi_fruit) == -1 using 'DBD::CSV' ok 165 - prepare using 'DBD::CSV' ok 166 - execute using 'DBD::CSV' ok 167 - execute(CREATE TABLE multi_fruit (dKey INT, dVal VARCHAR(10), qux INT)) == 0E0 using 'DBD::CSV' ok 168 - prepare using 'DBD::CSV' ok 169 - execute using 'DBD::CSV' ok 170 - execute(INSERT INTO multi_fruit VALUES (1,'oranges' , 11 )) == 1 using 'DBD::CSV' ok 171 - prepare using 'DBD::CSV' ok 172 - execute using 'DBD::CSV' ok 173 - execute(INSERT INTO multi_fruit VALUES (2,'to_change', 0 )) == 1 using 'DBD::CSV' ok 174 - prepare using 'DBD::CSV' ok 175 - execute using 'DBD::CSV' ok 176 - execute(INSERT INTO multi_fruit VALUES (3, NULL , 13 )) == 1 using 'DBD::CSV' ok 177 - prepare using 'DBD::CSV' ok 178 - execute using 'DBD::CSV' ok 179 - execute(INSERT INTO multi_fruit VALUES (4,'to_delete', 14 )) == 1 using 'DBD::CSV' ok 180 - execute == 4 using 'DBD::CSV' ok 182 - SELECT results for SELECT * FROM multi_fruit ORDER BY dKey DESC using DBD::CSV ok 183 - execute == 4 using 'DBD::CSV' ok 185 - SELECT results for SELECT * FROM multi_fruit ORDER BY dKey DESC using 'DBD::CSV' 2nd time ok 186 - prepare using 'DBD::CSV' ok 187 - execute using 'DBD::CSV' ok 188 - execute(INSERT INTO multi_fruit VALUES (?,?,?)) == 1 using 'DBD::CSV' ok 189 - execute == 5 using 'DBD::CSV' ok 191 - SELECT results for SELECT * FROM multi_fruit ORDER BY dKey DESC using DBD::CSV ok 192 - execute == 5 using 'DBD::CSV' ok 194 - SELECT results for SELECT * FROM multi_fruit ORDER BY dKey DESC using 'DBD::CSV' 2nd time ok 195 - prepare using 'DBD::CSV' ok 196 - execute using 'DBD::CSV' ok 197 - execute(INSERT INTO multi_fruit VALUES (6,'to_delete', 16 )) == 1 using 'DBD::CSV' ok 198 - prepare using 'DBD::CSV' ok 199 - execute using 'DBD::CSV' ok 200 - execute(INSERT INTO multi_fruit VALUES (7,'to delete', 17 )) == 1 using 'DBD::CSV' ok 201 - prepare using 'DBD::CSV' ok 202 - execute using 'DBD::CSV' ok 203 - execute(INSERT INTO multi_fruit VALUES (8,'to remove', 18 )) == 1 using 'DBD::CSV' ok 204 - prepare using 'DBD::CSV' ok 205 - execute using 'DBD::CSV' ok 206 - execute(UPDATE multi_fruit SET dVal='apples', qux='12' WHERE dKey=2) == 1 using 'DBD::CSV' ok 207 - $sth->execute(UPDATE multi_fruit SET dVal='apples', qux='12' WHERE dKey=2) == $sth->rows using DBD::CSV ok 208 - execute == 8 using 'DBD::CSV' ok 210 - SELECT results for SELECT * FROM multi_fruit ORDER BY dKey DESC using DBD::CSV ok 211 - execute == 8 using 'DBD::CSV' ok 213 - SELECT results for SELECT * FROM multi_fruit ORDER BY dKey DESC using 'DBD::CSV' 2nd time ok 214 - prepare using 'DBD::CSV' ok 215 - execute using 'DBD::CSV' ok 216 - execute(DELETE FROM multi_fruit WHERE dVal='to_delete') == 2 using 'DBD::CSV' ok 217 - $sth->execute(DELETE FROM multi_fruit WHERE dVal='to_delete') == $sth->rows using DBD::CSV ok 218 - prepare using 'DBD::CSV' ok 219 - execute using 'DBD::CSV' ok 220 - execute(DELETE FROM multi_fruit WHERE qux=17) == 1 using 'DBD::CSV' ok 221 - $sth->execute(DELETE FROM multi_fruit WHERE qux=17) == $sth->rows using DBD::CSV ok 222 - prepare using 'DBD::CSV' ok 223 - execute using 'DBD::CSV' ok 224 - execute(DELETE FROM multi_fruit WHERE dKey=8) == 1 using 'DBD::CSV' ok 225 - $sth->execute(DELETE FROM multi_fruit WHERE dKey=8) == $sth->rows using DBD::CSV ok 226 - execute == 4 using 'DBD::CSV' ok 228 - SELECT results for SELECT * FROM multi_fruit ORDER BY dKey DESC using DBD::CSV ok 229 - execute == 4 using 'DBD::CSV' ok 231 - SELECT results for SELECT * FROM multi_fruit ORDER BY dKey DESC using 'DBD::CSV' 2nd time ok 232 - prepare using 'DBD::CSV' ok 233 - execute using 'DBD::CSV' ok 234 - execute(DELETE FROM multi_fruit) == 4 using 'DBD::CSV' ok 235 - $sth->execute(DELETE FROM multi_fruit) == $sth->rows using DBD::CSV ok 236 - prepare using 'DBD::CSV' ok 238 - execute using 'DBD::CSV' 2nd time ok 241 - execute using 'DBD::CSV' ok 248 - prepare using 'DBD::CSV' ok 249 - execute using 'DBD::CSV' ok 250 - execute(DROP TABLE IF EXISTS test_tbl) == -1 using 'DBD::CSV' ok 251 - prepare using 'DBD::CSV' ok 252 - execute using 'DBD::CSV' ok 253 - execute(CREATE TABLE test_tbl (dKey INT, dVal VARCHAR(23))) == 0E0 using 'DBD::CSV' ok 254 - execute using 'DBD::CSV' ok 255 - execute(INSERT INTO test_tbl VALUES (?,?) [1, Perl]) == 1 using 'DBD::CSV' ok 256 - execute == 1 using 'DBD::CSV' ok 258 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [1] using DBD::CSV ok 259 - execute == 1 using 'DBD::CSV' ok 261 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [1] using 'DBD::CSV' 2nd time ok 262 - execute using 'DBD::CSV' ok 263 - execute(INSERT INTO test_tbl VALUES (?,?) [2, DBI]) == 1 using 'DBD::CSV' ok 264 - execute == 1 using 'DBD::CSV' ok 266 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [2] using DBD::CSV ok 267 - execute == 1 using 'DBD::CSV' ok 269 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [2] using 'DBD::CSV' 2nd time ok 270 - execute using 'DBD::CSV' ok 271 - execute(INSERT INTO test_tbl VALUES (?,?) [3, SQL::Statement]) == 1 using 'DBD::CSV' ok 272 - execute == 1 using 'DBD::CSV' ok 274 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [3] using DBD::CSV ok 275 - execute == 1 using 'DBD::CSV' ok 277 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [3] using 'DBD::CSV' 2nd time ok 278 - execute using 'DBD::CSV' ok 279 - execute(INSERT INTO test_tbl VALUES (?,?) [4, DBD::File]) == 1 using 'DBD::CSV' ok 280 - execute == 1 using 'DBD::CSV' ok 282 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [4] using DBD::CSV ok 283 - execute == 1 using 'DBD::CSV' ok 285 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [4] using 'DBD::CSV' 2nd time ok 286 - execute using 'DBD::CSV' ok 287 - execute(INSERT INTO test_tbl VALUES (?,?) [5, DBD::CSV]) == 1 using 'DBD::CSV' ok 288 - execute == 1 using 'DBD::CSV' ok 290 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [5] using DBD::CSV ok 291 - execute == 1 using 'DBD::CSV' ok 293 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [5] using 'DBD::CSV' 2nd time ok 294 - execute using 'DBD::CSV' ok 295 - execute(INSERT INTO test_tbl VALUES (?,?) [6, DBD::DBM]) == 1 using 'DBD::CSV' ok 296 - execute == 1 using 'DBD::CSV' ok 298 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [6] using DBD::CSV ok 299 - execute == 1 using 'DBD::CSV' ok 301 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [6] using 'DBD::CSV' 2nd time ok 302 - execute using 'DBD::CSV' ok 303 - execute(INSERT INTO test_tbl VALUES (?,?) [7, DBD::ODBC]) == 1 using 'DBD::CSV' ok 304 - execute == 1 using 'DBD::CSV' ok 306 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [7] using DBD::CSV ok 307 - execute == 1 using 'DBD::CSV' ok 309 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [7] using 'DBD::CSV' 2nd time ok 310 - execute using 'DBD::CSV' ok 311 - execute(INSERT INTO test_tbl VALUES (?,?) [8, DBD::SQLite]) == 1 using 'DBD::CSV' ok 312 - execute == 1 using 'DBD::CSV' ok 314 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [8] using DBD::CSV ok 315 - execute == 1 using 'DBD::CSV' ok 317 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [8] using 'DBD::CSV' 2nd time ok 318 - prepare using 'DBD::CSV' ok 319 - execute using 'DBD::CSV' ok 320 - execute(DROP TABLE test_tbl) == -1 using 'DBD::CSV' # Running tests for DBD::File ok 321 - prepare using 'DBD::File' ok 341 - execute using 'DBD::File' 2nd time ok 344 - execute using 'DBD::File' ok 350 - execute using 'DBD::File' 2nd time ok 353 - execute using 'DBD::File' ok 369 - execute using 'DBD::File' 2nd time ok 372 - execute using 'DBD::File' ok 387 - execute using 'DBD::File' 2nd time ok 390 - execute using 'DBD::File' ok 397 - execute == 1 using 'DBD::File' ok 399 - SELECT results for SELECT COUNT(*) FROM multi_fruit using DBD::File ok 400 - execute == 1 using 'DBD::File' ok 402 - SELECT results for SELECT COUNT(*) FROM multi_fruit using 'DBD::File' 2nd time ok 403 - prepare using 'DBD::File' ok 404 - execute using 'DBD::File' ok 405 - execute(DROP TABLE multi_fruit) == -1 using 'DBD::File' ok 406 - prepare using 'DBD::File' ok 407 - prepare using 'DBD::File' ok 417 - execute using 'DBD::File' 2nd time ok 420 - execute using 'DBD::File' ok 425 - execute using 'DBD::File' 2nd time ok 428 - execute using 'DBD::File' ok 433 - execute using 'DBD::File' 2nd time ok 436 - execute using 'DBD::File' ok 441 - execute using 'DBD::File' 2nd time ok 444 - execute using 'DBD::File' ok 449 - execute using 'DBD::File' 2nd time ok 452 - execute using 'DBD::File' ok 457 - execute using 'DBD::File' 2nd time ok 460 - execute using 'DBD::File' ok 465 - execute using 'DBD::File' 2nd time ok 468 - execute using 'DBD::File' ok 473 - execute using 'DBD::File' 2nd time ok 476 - execute using 'DBD::DBM' ok 482 - prepare using 'DBD::DBM' ok 483 - execute using 'DBD::DBM' ok 484 - execute(DROP TABLE IF EXISTS multi_fruit) == -1 using 'DBD::DBM' ok 485 - prepare using 'DBD::DBM' ok 486 - execute using 'DBD::DBM' ok 487 - execute(CREATE TABLE multi_fruit (dKey INT, dVal VARCHAR(10), qux INT)) == 0E0 using 'DBD::DBM' ok 488 - prepare using 'DBD::DBM' ok 489 - execute using 'DBD::DBM' ok 490 - execute(INSERT INTO multi_fruit VALUES (1,'oranges' , 11 )) == 1 using 'DBD::DBM' ok 491 - prepare using 'DBD::DBM' ok 492 - execute using 'DBD::DBM' ok 493 - execute(INSERT INTO multi_fruit VALUES (2,'to_change', 0 )) == 1 using 'DBD::DBM' ok 494 - prepare using 'DBD::DBM' ok 495 - execute using 'DBD::DBM' ok 496 - execute(INSERT INTO multi_fruit VALUES (3, NULL , 13 )) == 1 using 'DBD::DBM' ok 497 - prepare using 'DBD::DBM' ok 498 - execute using 'DBD::DBM' ok 499 - execute(INSERT INTO multi_fruit VALUES (4,'to_delete', 14 )) == 1 using 'DBD::DBM' ok 500 - execute == 4 using 'DBD::DBM' ok 502 - SELECT results for SELECT * FROM multi_fruit ORDER BY dKey DESC using DBD::DBM ok 503 - execute == 4 using 'DBD::DBM' ok 505 - SELECT results for SELECT * FROM multi_fruit ORDER BY dKey DESC using 'DBD::DBM' 2nd time ok 506 - prepare using 'DBD::DBM' ok 507 - execute using 'DBD::DBM' ok 508 - execute(INSERT INTO multi_fruit VALUES (?,?,?)) == 1 using 'DBD::DBM' ok 509 - execute == 5 using 'DBD::DBM' ok 511 - SELECT results for SELECT * FROM multi_fruit ORDER BY dKey DESC using DBD::DBM ok 512 - execute == 5 using 'DBD::DBM' ok 514 - SELECT results for SELECT * FROM multi_fruit ORDER BY dKey DESC using 'DBD::DBM' 2nd time ok 515 - prepare using 'DBD::DBM' ok 516 - execute using 'DBD::DBM' ok 517 - execute(INSERT INTO multi_fruit VALUES (6,'to_delete', 16 )) == 1 using 'DBD::DBM' ok 518 - prepare using 'DBD::DBM' ok 519 - execute using 'DBD::DBM' ok 520 - execute(INSERT INTO multi_fruit VALUES (7,'to delete', 17 )) == 1 using 'DBD::DBM' ok 521 - prepare using 'DBD::DBM' ok 522 - execute using 'DBD::DBM' ok 523 - execute(INSERT INTO multi_fruit VALUES (8,'to remove', 18 )) == 1 using 'DBD::DBM' ok 524 - prepare using 'DBD::DBM' ok 525 - execute using 'DBD::DBM' ok 526 - execute(UPDATE multi_fruit SET dVal='apples', qux='12' WHERE dKey=2) == 1 using 'DBD::DBM' ok 527 - $sth->execute(UPDATE multi_fruit SET dVal='apples', qux='12' WHERE dKey=2) == $sth->rows using DBD::DBM ok 528 - execute == 8 using 'DBD::DBM' ok 530 - SELECT results for SELECT * FROM multi_fruit ORDER BY dKey DESC using DBD::DBM ok 531 - execute == 8 using 'DBD::DBM' ok 533 - SELECT results for SELECT * FROM multi_fruit ORDER BY dKey DESC using 'DBD::DBM' 2nd time ok 534 - prepare using 'DBD::DBM' ok 535 - execute using 'DBD::DBM' ok 536 - execute(DELETE FROM multi_fruit WHERE dVal='to_delete') == 2 using 'DBD::DBM' ok 537 - $sth->execute(DELETE FROM multi_fruit WHERE dVal='to_delete') == $sth->rows using DBD::DBM ok 538 - prepare using 'DBD::DBM' ok 539 - execute using 'DBD::DBM' ok 540 - execute(DELETE FROM multi_fruit WHERE qux=17) == 1 using 'DBD::DBM' ok 541 - $sth->execute(DELETE FROM multi_fruit WHERE qux=17) == $sth->rows using DBD::DBM ok 542 - prepare using 'DBD::DBM' ok 543 - execute using 'DBD::DBM' ok 544 - execute(DELETE FROM multi_fruit WHERE dKey=8) == 1 using 'DBD::DBM' ok 545 - $sth->execute(DELETE FROM multi_fruit WHERE dKey=8) == $sth->rows using DBD::DBM ok 546 - execute == 4 using 'DBD::DBM' ok 548 - SELECT results for SELECT * FROM multi_fruit ORDER BY dKey DESC using DBD::DBM ok 549 - execute == 4 using 'DBD::DBM' ok 551 - SELECT results for SELECT * FROM multi_fruit ORDER BY dKey DESC using 'DBD::DBM' 2nd time ok 552 - prepare using 'DBD::DBM' ok 553 - execute using 'DBD::DBM' ok 554 - execute(DELETE FROM multi_fruit) == 4 using 'DBD::DBM' ok 555 - $sth->execute(DELETE FROM multi_fruit) == $sth->rows using DBD::DBM ok 556 - prepare using 'DBD::DBM' ok 558 - execute using 'DBD::DBM' 2nd time ok 561 - execute using 'DBD::DBM' ok 568 - prepare using 'DBD::DBM' ok 569 - execute using 'DBD::DBM' ok 570 - execute(DROP TABLE IF EXISTS test_tbl) == -1 using 'DBD::DBM' ok 571 - prepare using 'DBD::DBM' ok 572 - execute using 'DBD::DBM' ok 573 - execute(CREATE TABLE test_tbl (dKey INT, dVal VARCHAR(23))) == 0E0 using 'DBD::DBM' ok 574 - execute using 'DBD::DBM' ok 575 - execute(INSERT INTO test_tbl VALUES (?,?) [1, Perl]) == 1 using 'DBD::DBM' ok 576 - execute == 1 using 'DBD::DBM' ok 578 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [1] using DBD::DBM ok 579 - execute == 1 using 'DBD::DBM' ok 581 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [1] using 'DBD::DBM' 2nd time ok 582 - execute using 'DBD::DBM' ok 583 - execute(INSERT INTO test_tbl VALUES (?,?) [2, DBI]) == 1 using 'DBD::DBM' ok 584 - execute == 1 using 'DBD::DBM' ok 586 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [2] using DBD::DBM ok 587 - execute == 1 using 'DBD::DBM' ok 589 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [2] using 'DBD::DBM' 2nd time ok 590 - execute using 'DBD::DBM' ok 591 - execute(INSERT INTO test_tbl VALUES (?,?) [3, SQL::Statement]) == 1 using 'DBD::DBM' ok 592 - execute == 1 using 'DBD::DBM' ok 594 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [3] using DBD::DBM ok 595 - execute == 1 using 'DBD::DBM' ok 597 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [3] using 'DBD::DBM' 2nd time ok 598 - execute using 'DBD::DBM' ok 599 - execute(INSERT INTO test_tbl VALUES (?,?) [4, DBD::File]) == 1 using 'DBD::DBM' ok 600 - execute == 1 using 'DBD::DBM' ok 602 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [4] using DBD::DBM ok 603 - execute == 1 using 'DBD::DBM' ok 605 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [4] using 'DBD::DBM' 2nd time ok 606 - execute using 'DBD::DBM' ok 607 - execute(INSERT INTO test_tbl VALUES (?,?) [5, DBD::CSV]) == 1 using 'DBD::DBM' ok 608 - execute == 1 using 'DBD::DBM' ok 610 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [5] using DBD::DBM ok 611 - execute == 1 using 'DBD::DBM' ok 613 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [5] using 'DBD::DBM' 2nd time ok 614 - execute using 'DBD::DBM' ok 615 - execute(INSERT INTO test_tbl VALUES (?,?) [6, DBD::DBM]) == 1 using 'DBD::DBM' ok 616 - execute == 1 using 'DBD::DBM' ok 618 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [6] using DBD::DBM ok 619 - execute == 1 using 'DBD::DBM' ok 621 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [6] using 'DBD::DBM' 2nd time ok 622 - execute using 'DBD::DBM' ok 623 - execute(INSERT INTO test_tbl VALUES (?,?) [7, DBD::ODBC]) == 1 using 'DBD::DBM' ok 624 - execute == 1 using 'DBD::DBM' ok 626 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [7] using DBD::DBM ok 627 - execute == 1 using 'DBD::DBM' ok 629 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [7] using 'DBD::DBM' 2nd time ok 630 - execute using 'DBD::DBM' ok 631 - execute(INSERT INTO test_tbl VALUES (?,?) [8, DBD::SQLite]) == 1 using 'DBD::DBM' ok 632 - execute == 1 using 'DBD::DBM' ok 634 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [8] using DBD::DBM ok 635 - execute == 1 using 'DBD::DBM' ok 637 - SELECT results for SELECT dKey, dVal FROM test_tbl WHERE dKey=? [8] using 'DBD::DBM' 2nd time ok 638 - prepare using 'DBD::DBM' ok 639 - execute using 'DBD::DBM' ok 640 - execute(DROP TABLE test_tbl) == -1 using 'DBD::DBM' 1..640 ok t/06virtual.t ... # # Using required: # # SQL::Statement: 1.409 # # Using recommended: # # DBD::CSV: 0.48 # # DBD::DBM: 0.08 # # DBD::File: 0.44 # # DBI: 1.634 # # MLDBM: 2.05 # # Math::Base::Convert: 0.11 # Running tests for SQL::Statement ok 1 - prepare CREATE TEMP TABLE biz (sales INTEGER, class CHAR, color CHAR, BUGNULL CHAR) on SQL::Statement ok 2 - execute CREATE TEMP TABLE biz (sales INTEGER, class CHAR, color CHAR, BUGNULL CHAR) on SQL::Statement ok 3 - prepare INSERT INTO biz VALUES (1000, 'Car', 'White', NULL) on SQL::Statement ok 4 - execute INSERT INTO biz VALUES (1000, 'Car', 'White', NULL) on SQL::Statement ok 5 - prepare INSERT INTO biz VALUES ( 500, 'Car', 'Blue', NULL ) on SQL::Statement ok 6 - execute INSERT INTO biz VALUES ( 500, 'Car', 'Blue', NULL ) on SQL::Statement ok 7 - prepare INSERT INTO biz VALUES ( 400, 'Truck', 'White', NULL ) on SQL::Statement ok 8 - execute INSERT INTO biz VALUES ( 400, 'Truck', 'White', NULL ) on SQL::Statement ok 9 - prepare INSERT INTO biz VALUES ( 700, 'Car', 'Red', NULL ) on SQL::Statement ok 10 - execute INSERT INTO biz VALUES ( 700, 'Car', 'Red', NULL ) on SQL::Statement ok 11 - prepare INSERT INTO biz VALUES ( 300, 'Truck', 'White', NULL ) on SQL::Statement ok 12 - execute INSERT INTO biz VALUES ( 300, 'Truck', 'White', NULL ) on SQL::Statement ok 13 - prepare CREATE TEMP TABLE baz (ordered INTEGER, class CHAR, color CHAR) on SQL::Statement ok 14 - execute CREATE TEMP TABLE baz (ordered INTEGER, class CHAR, color CHAR) on SQL::Statement ok 15 - prepare INSERT INTO baz VALUES ( 250, 'Car', 'White' ), ( 100, 'Car', 'Blue' ), ( 150, 'Car', 'Red' ) on SQL::Statement ok 16 - execute INSERT INTO baz VALUES ( 250, 'Car', 'White' ), ( 100, 'Car', 'Blue' ), ( 150, 'Car', 'Red' ) on SQL::Statement ok 17 - prepare INSERT INTO baz VALUES ( 80, 'Truck', 'White' ), ( 60, 'Truck', 'Green' ) -- Yes, we introduce new cars :) on SQL::Statement ok 18 - execute INSERT INTO baz VALUES ( 80, 'Truck', 'White' ), ( 60, 'Truck', 'Green' ) -- Yes, we introduce new cars :) on SQL::Statement ok 19 - prepare INSERT INTO baz VALUES ( 666, 'Truck', 'Yellow -- no, blue' ) -- Double dash inside quotes does not introduce comment on SQL::Statement ok 20 - execute INSERT INTO baz VALUES ( 666, 'Truck', 'Yellow -- no, blue' ) -- Double dash inside quotes does not introduce comment on SQL::Statement ok 21 - prepare CREATE TEMP TABLE numbers (c_foo INTEGER, foo CHAR, bar INTEGER) on SQL::Statement ok 22 - execute CREATE TEMP TABLE numbers (c_foo INTEGER, foo CHAR, bar INTEGER) on SQL::Statement ok 23 - prepare CREATE TEMP TABLE trick (id INTEGER, foo CHAR) on SQL::Statement ok 24 - execute CREATE TEMP TABLE trick (id INTEGER, foo CHAR) on SQL::Statement ok 25 - prepare INSERT INTO trick VALUES (1, '1foo') on SQL::Statement ok 26 - execute INSERT INTO trick VALUES (1, '1foo') on SQL::Statement ok 27 - prepare INSERT INTO trick VALUES (11, 'foo') on SQL::Statement ok 28 - execute INSERT INTO trick VALUES (11, 'foo') on SQL::Statement ok 29 - prepare CREATE TYPE TIMESTAMP on SQL::Statement ok 30 - execute CREATE TYPE TIMESTAMP on SQL::Statement ok 31 - prepare CREATE TEMP TABLE log (id INT, host CHAR, signature CHAR, message CHAR, time_stamp TIMESTAMP) on SQL::Statement ok 32 - execute CREATE TEMP TABLE log (id INT, host CHAR, signature CHAR, message CHAR, time_stamp TIMESTAMP) on SQL::Statement ok 33 - prepare INSERT INTO log VALUES (1, 'bert', '/netbsd', 'Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,', 1460110712) on SQL::Statement ok 34 - execute INSERT INTO log VALUES (1, 'bert', '/netbsd', 'Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,', 1460110712) on SQL::Statement ok 35 - prepare INSERT INTO log VALUES (2, 'bert', '/netbsd', '2006, 2007, 2008, 2009, 2010', 1460110712) on SQL::Statement ok 36 - execute INSERT INTO log VALUES (2, 'bert', '/netbsd', '2006, 2007, 2008, 2009, 2010', 1460110712) on SQL::Statement ok 37 - prepare INSERT INTO log VALUES (3, 'bert', '/netbsd', 'The NetBSD Foundation, Inc. All rights reserved.', 1460110712) on SQL::Statement ok 38 - execute INSERT INTO log VALUES (3, 'bert', '/netbsd', 'The NetBSD Foundation, Inc. All rights reserved.', 1460110712) on SQL::Statement ok 39 - prepare INSERT INTO log VALUES (4, 'bert', '/netbsd', 'Copyright (c) 1982, 1986, 1989, 1991, 1993', 1460110712) on SQL::Statement ok 40 - execute INSERT INTO log VALUES (4, 'bert', '/netbsd', 'Copyright (c) 1982, 1986, 1989, 1991, 1993', 1460110712) on SQL::Statement ok 41 - prepare INSERT INTO log VALUES (5, 'bert', '/netbsd', 'The Regents of the University of California. All rights reserved.', 1460110712) on SQL::Statement ok 42 - execute INSERT INTO log VALUES (5, 'bert', '/netbsd', 'The Regents of the University of California. All rights reserved.', 1460110712) on SQL::Statement ok 43 - prepare INSERT INTO log VALUES (6, 'bert', '/netbsd', '', 1460110712) on SQL::Statement ok 44 - execute INSERT INTO log VALUES (6, 'bert', '/netbsd', '', 1460110712) on SQL::Statement ok 45 - prepare INSERT INTO log VALUES (7, 'bert', '/netbsd', 'NetBSD 5.99.39 (BERT) \#0: Fri Oct 8 06:23:03 CEST 2010', 1460110712) on SQL::Statement ok 46 - execute INSERT INTO log VALUES (7, 'bert', '/netbsd', 'NetBSD 5.99.39 (BERT) \#0: Fri Oct 8 06:23:03 CEST 2010', 1460110712) on SQL::Statement ok 47 - prepare INSERT INTO log VALUES (8, 'ernie', 'rpc.statd', 'starting', 1460107112) on SQL::Statement ok 48 - execute INSERT INTO log VALUES (8, 'ernie', 'rpc.statd', 'starting', 1460107112) on SQL::Statement ok 49 - prepare INSERT INTO log VALUES (9, 'ernie', 'savecore', 'no core dump', 1460103512) on SQL::Statement ok 50 - execute INSERT INTO log VALUES (9, 'ernie', 'savecore', 'no core dump', 1460103512) on SQL::Statement ok 51 - prepare INSERT INTO log VALUES (10, 'ernie', 'postfix/postfix-script', 'starting the Postfix mail system', 1460099912) on SQL::Statement ok 52 - execute INSERT INTO log VALUES (10, 'ernie', 'postfix/postfix-script', 'starting the Postfix mail system', 1460099912) on SQL::Statement ok 53 - prepare INSERT INTO log VALUES (11, 'ernie', 'rpcbind', 'connect from 127.0.0.1 to dump()', 1460096312) on SQL::Statement ok 54 - execute INSERT INTO log VALUES (11, 'ernie', 'rpcbind', 'connect from 127.0.0.1 to dump()', 1460096312) on SQL::Statement ok 55 - prepare INSERT INTO log VALUES (12, 'ernie', 'sshd', 'last message repeated 2 times', 1460092712) on SQL::Statement ok 56 - execute INSERT INTO log VALUES (12, 'ernie', 'sshd', 'last message repeated 2 times', 1460092712) on SQL::Statement ok 57 - prepare INSERT INTO log VALUES (13, 'ernie', 'shutdown', 'poweroff by root:', 1460089112) on SQL::Statement ok 58 - execute INSERT INTO log VALUES (13, 'ernie', 'shutdown', 'poweroff by root:', 1460089112) on SQL::Statement ok 59 - prepare INSERT INTO log VALUES (14, 'ernie', 'shutdown', 'rebooted by root', 1460085512) on SQL::Statement ok 60 - execute INSERT INTO log VALUES (14, 'ernie', 'shutdown', 'rebooted by root', 1460085512) on SQL::Statement ok 61 - prepare INSERT INTO log VALUES (15, 'ernie', 'sshd', 'Server listening on :: port 22.', 1460081912) on SQL::Statement ok 62 - execute INSERT INTO log VALUES (15, 'ernie', 'sshd', 'Server listening on :: port 22.', 1460081912) on SQL::Statement ok 63 - prepare INSERT INTO log VALUES (16, 'ernie', 'sshd', 'Server listening on 0.0.0.0 port 22.', 1460078312) on SQL::Statement ok 64 - execute INSERT INTO log VALUES (16, 'ernie', 'sshd', 'Server listening on 0.0.0.0 port 22.', 1460078312) on SQL::Statement ok 65 - prepare INSERT INTO log VALUES (17, 'ernie', 'sshd', 'Received SIGHUP; restarting.', 1460074712) on SQL::Statement ok 66 - execute INSERT INTO log VALUES (17, 'ernie', 'sshd', 'Received SIGHUP; restarting.', 1460074712) on SQL::Statement ok 67 - prepare SELECT class,SUM(sales) as foo, MAX(sales) FROM biz GROUP BY class using SQL::Statement ok 68 - execute SELECT class,SUM(sales) as foo, MAX(sales) FROM biz GROUP BY class using SQL::Statement ok 69 - GROUP BY one column ok 70 - prepare SELECT color,class,SUM(sales), MAX(sales) FROM biz GROUP BY color,class using SQL::Statement ok 71 - execute SELECT color,class,SUM(sales), MAX(sales) FROM biz GROUP BY color,class using SQL::Statement ok 72 - GROUP BY several columns ok 73 - prepare SELECT SUM(sales), MAX(sales) FROM biz using SQL::Statement ok 74 - execute SELECT SUM(sales), MAX(sales) FROM biz using SQL::Statement ok 75 - AGGREGATE FUNCTIONS WITHOUT GROUP BY ok 76 - prepare SELECT COUNT(DISTINCT class) FROM biz using SQL::Statement ok 77 - execute SELECT COUNT(DISTINCT class) FROM biz using SQL::Statement ok 78 - COUNT(distinct column) WITHOUT GROUP BY ok 79 - prepare SELECT distinct class, COUNT(distinct color) FROM biz GROUP BY class using SQL::Statement ok 80 - execute SELECT distinct class, COUNT(distinct color) FROM biz GROUP BY class using SQL::Statement ok 81 - COUNT(distinct column) WITH GROUP BY ok 82 - prepare SELECT class, COUNT(*) FROM biz GROUP BY class using SQL::Statement ok 83 - execute SELECT class, COUNT(*) FROM biz GROUP BY class using SQL::Statement ok 84 - COUNT(*) with GROUP BY ok 85 - prepare SELECT DISTINCT biz.class, baz.color AS foo FROM biz, baz WHERE biz.class = baz.class ORDER BY foo using SQL::Statement ok 86 - execute SELECT DISTINCT biz.class, baz.color AS foo FROM biz, baz WHERE biz.class = baz.class ORDER BY foo using SQL::Statement ok 87 - ORDER BY on aliased column ok 88 - prepare SELECT class, COUNT(distinct *) FROM biz GROUP BY class using SQL::Statement fails ok 89 - COUNT(DISTINCT *) fails ok 90 - prepare SELECT class, COUNT(color) FROM biz using SQL::Statement ok 91 - execute SELECT class, COUNT(color) FROM biz using SQL::Statement fails ok 92 - GROUP BY required ok 93 - prepare SELECT SUM(bar) FROM numbers using SQL::Statement ok 94 - execute SELECT SUM(bar) FROM numbers using SQL::Statement ok 95 - SUM(bar) of empty table ok 96 - prepare SELECT COUNT(bar),c_foo FROM numbers GROUP BY c_foo using SQL::Statement ok 97 - execute SELECT COUNT(bar),c_foo FROM numbers GROUP BY c_foo using SQL::Statement ok 98 - COUNT(bar) of empty table with GROUP BY ok 99 - prepare SELECT COUNT(*) FROM numbers using SQL::Statement ok 100 - execute SELECT COUNT(*) FROM numbers using SQL::Statement ok 101 - COUNT(*) of empty table ok 102 - prepare INSERT INTO numbers VALUES (?, ?, ?) using SQL::Statement ok 103 - 1 .. 3999: execute INSERT INTO numbers VALUES (?, ?, ?) using SQL::Statement ok 104 - prepare SELECT foo AS boo, COUNT (*) AS counted FROM numbers GROUP BY boo using SQL::Statement ok 105 - execute SELECT foo AS boo, COUNT (*) AS counted FROM numbers GROUP BY boo using SQL::Statement ok 106 - Columns in Number of rows in aggregated Table ok 107 - Number of rows in aggregated Table ok 108 - SUM(COUNTED) ok 109 - prepare SELECT MIN(c_foo), MAX(c_foo), AVG(c_foo) FROM numbers using SQL::Statement ok 110 - execute SELECT MIN(c_foo), MAX(c_foo), AVG(c_foo) FROM numbers using SQL::Statement ok 111 - Aggregate functions MIN, MAX, AVG ok 112 - prepare SELECT COUNT(*) FROM trick using SQL::Statement ok 113 - execute SELECT COUNT(*) FROM trick using SQL::Statement ok 114 - COUNT(*) internal for nasty table ok 115 - prepare SELECT CURRENT_DATE() using SQL::Statement ok 116 - execute SELECT CURRENT_DATE() using SQL::Statement ok 117 - current_date int ok 118 - prepare SELECT CURRENT_TIME using SQL::Statement ok 119 - execute SELECT CURRENT_TIME using SQL::Statement ok 120 - current_time int ok 121 - prepare SELECT CURRENT_TIMESTAMP() using SQL::Statement ok 122 - execute SELECT CURRENT_TIMESTAMP() using SQL::Statement ok 123 - current_timestamp int ok 124 - prepare SELECT CURDATE using SQL::Statement ok 125 - execute SELECT CURDATE using SQL::Statement ok 126 - curdate int ok 127 - prepare SELECT CURTIME() using SQL::Statement ok 128 - execute SELECT CURTIME() using SQL::Statement ok 129 - curtime int ok 130 - prepare SELECT NOW using SQL::Statement ok 131 - execute SELECT NOW using SQL::Statement ok 132 - now int ok 133 - prepare SELECT UNIX_TIMESTAMP() using SQL::Statement ok 134 - execute SELECT UNIX_TIMESTAMP() using SQL::Statement ok 135 - unix_timestamp int ok 136 - prepare SELECT CURRENT_TIME (1) using SQL::Statement ok 137 - execute SELECT CURRENT_TIME (1) using SQL::Statement ok 138 - current_time precision ok 139 - prepare SELECT CURRENT_TIMESTAMP (2) using SQL::Statement ok 140 - execute SELECT CURRENT_TIMESTAMP (2) using SQL::Statement ok 141 - current_timestamp precision ok 142 - prepare SELECT CURTIME (3) using SQL::Statement ok 143 - execute SELECT CURTIME (3) using SQL::Statement ok 144 - curtime precision ok 145 - prepare SELECT NOW(4) using SQL::Statement ok 146 - execute SELECT NOW(4) using SQL::Statement ok 147 - now precision ok 148 - prepare SELECT UNIX_TIMESTAMP(5) using SQL::Statement ok 149 - execute SELECT UNIX_TIMESTAMP(5) using SQL::Statement ok 150 - unix_timestamp precision ok 151 - prepare SELECT ASCII('A') using SQL::Statement ok 152 - execute SELECT ASCII('A') using SQL::Statement ok 153 - ascii char ok 154 - prepare SELECT ASCII('ABC') using SQL::Statement ok 155 - execute SELECT ASCII('ABC') using SQL::Statement ok 156 - ascii str ok 157 - prepare SELECT CHAR() using SQL::Statement ok 158 - execute SELECT CHAR() using SQL::Statement ok 159 - char blank ok 160 - prepare SELECT CHAR(65) using SQL::Statement ok 161 - execute SELECT CHAR(65) using SQL::Statement ok 162 - char char ok 163 - prepare SELECT CHAR(CONV('263A', 16)) using SQL::Statement ok 164 - execute SELECT CHAR(CONV('263A', 16)) using SQL::Statement ok 165 - char char unicode ok 166 - prepare SELECT CHAR(CONV('263A', 16), 9787, CONV('10011000111100', 2)) using SQL::Statement ok 167 - execute SELECT CHAR(CONV('263A', 16), 9787, CONV('10011000111100', 2)) using SQL::Statement ok 168 - char str unicode ok 169 - prepare SELECT CHAR(65,66,67) using SQL::Statement ok 170 - execute SELECT CHAR(65,66,67) using SQL::Statement ok 171 - char str ok 172 - prepare SELECT BIT_LENGTH(' oo') using SQL::Statement ok 173 - execute SELECT BIT_LENGTH(' oo') using SQL::Statement ok 174 - bit_length 6bit ok 175 - prepare SELECT BIT_LENGTH('foo') using SQL::Statement ok 176 - execute SELECT BIT_LENGTH('foo') using SQL::Statement ok 177 - bit_length 7bit ok 178 - prepare SELECT BIT_LENGTH(CHAR(9786, 9787, 9788)) using SQL::Statement ok 179 - execute SELECT BIT_LENGTH(CHAR(9786, 9787, 9788)) using SQL::Statement ok 180 - bit_length unicode ok 181 - prepare SELECT CHARACTER_LENGTH('foo') using SQL::Statement ok 182 - execute SELECT CHARACTER_LENGTH('foo') using SQL::Statement ok 183 - character_length ok 184 - prepare SELECT CHAR_LENGTH('foo') using SQL::Statement ok 185 - execute SELECT CHAR_LENGTH('foo') using SQL::Statement ok 186 - char_length ok 187 - prepare SELECT CHARACTER_LENGTH(CHAR(9786, 9787, 9788)) using SQL::Statement ok 188 - execute SELECT CHARACTER_LENGTH(CHAR(9786, 9787, 9788)) using SQL::Statement ok 189 - character_length unicode ok 190 - prepare SELECT CHAR_LENGTH(CHAR(9786, 9787, 9788)) using SQL::Statement ok 191 - execute SELECT CHAR_LENGTH(CHAR(9786, 9787, 9788)) using SQL::Statement ok 192 - char_length unicode ok 193 - prepare SELECT COALESCE(NULL,'z') using SQL::Statement ok 194 - execute SELECT COALESCE(NULL,'z') using SQL::Statement ok 195 - coalesce ok 196 - prepare SELECT NVL(NULL,'z') using SQL::Statement ok 197 - execute SELECT NVL(NULL,'z') using SQL::Statement ok 198 - nvl ok 199 - prepare SELECT IFNULL(NULL,'z') using SQL::Statement ok 200 - execute SELECT IFNULL(NULL,'z') using SQL::Statement ok 201 - ifnull ok 202 - prepare SELECT CONCAT('A','B') using SQL::Statement ok 203 - execute SELECT CONCAT('A','B') using SQL::Statement ok 204 - concat good ok 205 - prepare SELECT CONCAT('A',NULL) using SQL::Statement ok 206 - execute SELECT CONCAT('A',NULL) using SQL::Statement ok 207 - concat bad ok 208 - prepare SELECT CONV('10101001111011101101011', 2, 64) using SQL::Statement ok 209 - execute SELECT CONV('10101001111011101101011', 2, 64) using SQL::Statement ok 210 - conv 2->64 ok 211 - prepare SELECT CONV('10101001111011101101011', 2, 16) using SQL::Statement ok 212 - execute SELECT CONV('10101001111011101101011', 2, 16) using SQL::Statement ok 213 - conv 2->16 ok 214 - prepare SELECT CONV('10101001111011101101011', 2, 10) using SQL::Statement ok 215 - execute SELECT CONV('10101001111011101101011', 2, 10) using SQL::Statement ok 216 - conv 2->10 ok 217 - prepare SELECT CONV('10101001111011101101011', 2, 8) using SQL::Statement ok 218 - execute SELECT CONV('10101001111011101101011', 2, 8) using SQL::Statement ok 219 - conv 2->8 ok 220 - prepare SELECT CONV('10101001111011101101011', 2, 2) using SQL::Statement ok 221 - execute SELECT CONV('10101001111011101101011', 2, 2) using SQL::Statement ok 222 - conv 2->2 ok 223 - prepare select conv('16', 10, 16) using SQL::Statement ok 224 - execute select conv('16', 10, 16) using SQL::Statement ok 225 - conv 10->16 integer with trailing 0 ok 226 - prepare select conv('0', 10, 16) using SQL::Statement ok 227 - execute select conv('0', 10, 16) using SQL::Statement ok 228 - conv 10->16 integer 0 ok 229 - prepare SELECT DISTINCT DECODE(color,'White','W','Red','R','B') AS cfc FROM biz ORDER BY cfc using SQL::Statement ok 230 - execute SELECT DISTINCT DECODE(color,'White','W','Red','R','B') AS cfc FROM biz ORDER BY cfc using SQL::Statement ok 231 - decode ok 232 - prepare SELECT INSERT('foodieland', 4, 3, 'bar') using SQL::Statement ok 233 - execute SELECT INSERT('foodieland', 4, 3, 'bar') using SQL::Statement ok 234 - insert good 1:1 ok 235 - prepare SELECT INSERT('foodland', 4, 1, 'bar') using SQL::Statement ok 236 - execute SELECT INSERT('foodland', 4, 1, 'bar') using SQL::Statement ok 237 - insert good non-1:1 ok 238 - prepare SELECT INSERT(NULL, 4, 1, 'bar') using SQL::Statement ok 239 - execute SELECT INSERT(NULL, 4, 1, 'bar') using SQL::Statement ok 240 - insert bad 1 ok 241 - prepare SELECT INSERT('foodland', 4, 1, NULL) using SQL::Statement ok 242 - execute SELECT INSERT('foodland', 4, 1, NULL) using SQL::Statement ok 243 - insert bad 2 ok 244 - prepare SELECT LEFT('foodland', 4) using SQL::Statement ok 245 - execute SELECT LEFT('foodland', 4) using SQL::Statement ok 246 - left good ok 247 - prepare SELECT LEFT(NULL, 4) using SQL::Statement ok 248 - execute SELECT LEFT(NULL, 4) using SQL::Statement ok 249 - left bad 1 ok 250 - prepare SELECT LEFT('foodland', NULL) using SQL::Statement ok 251 - execute SELECT LEFT('foodland', NULL) using SQL::Statement ok 252 - left bad 2 ok 253 - prepare SELECT RIGHT('foodland', 4) using SQL::Statement ok 254 - execute SELECT RIGHT('foodland', 4) using SQL::Statement ok 255 - right good ok 256 - prepare SELECT RIGHT(NULL, 4) using SQL::Statement ok 257 - execute SELECT RIGHT(NULL, 4) using SQL::Statement ok 258 - right bad 1 ok 259 - prepare SELECT RIGHT('foodland', NULL) using SQL::Statement ok 260 - execute SELECT RIGHT('foodland', NULL) using SQL::Statement ok 261 - right bad 2 ok 262 - prepare SELECT LOCATE('a','bar') using SQL::Statement ok 263 - execute SELECT LOCATE('a','bar') using SQL::Statement ok 264 - locate 2param ok 265 - prepare SELECT LOCATE('a','barafa',3) using SQL::Statement ok 266 - execute SELECT LOCATE('a','barafa',3) using SQL::Statement ok 267 - locate 3param ok 268 - prepare SELECT POSITION('a','bar') using SQL::Statement ok 269 - execute SELECT POSITION('a','bar') using SQL::Statement ok 270 - position 2param ok 271 - prepare SELECT POSITION('a','barafa',3) using SQL::Statement ok 272 - execute SELECT POSITION('a','barafa',3) using SQL::Statement ok 273 - position 3param ok 274 - prepare SELECT LOWER('A') using SQL::Statement ok 275 - execute SELECT LOWER('A') using SQL::Statement ok 276 - lower ok 277 - prepare SELECT UPPER('a') using SQL::Statement ok 278 - execute SELECT UPPER('a') using SQL::Statement ok 279 - upper ok 280 - prepare SELECT LCASE('A') using SQL::Statement ok 281 - execute SELECT LCASE('A') using SQL::Statement ok 282 - lcase ok 283 - prepare SELECT UCASE('a') using SQL::Statement ok 284 - execute SELECT UCASE('a') using SQL::Statement ok 285 - ucase ok 286 - prepare SELECT LTRIM(' fun ') using SQL::Statement ok 287 - execute SELECT LTRIM(' fun ') using SQL::Statement ok 288 - ltrim ok 289 - prepare SELECT RTRIM(' fun ') using SQL::Statement ok 290 - execute SELECT RTRIM(' fun ') using SQL::Statement ok 291 - rtrim ok 292 - prepare SELECT OCTET_LENGTH('foo') using SQL::Statement ok 293 - execute SELECT OCTET_LENGTH('foo') using SQL::Statement ok 294 - octet_length ok 295 - prepare SELECT OCTET_LENGTH(CHAR(64, 169, 9786, 65572)) using SQL::Statement ok 296 - execute SELECT OCTET_LENGTH(CHAR(64, 169, 9786, 65572)) using SQL::Statement ok 297 - octet_length unicode ok 298 - prepare SELECT REGEX('jeff','/EF/i') using SQL::Statement ok 299 - execute SELECT REGEX('jeff','/EF/i') using SQL::Statement ok 300 - regex match ok 301 - prepare SELECT REGEX('jeff','/zzz/') using SQL::Statement ok 302 - execute SELECT REGEX('jeff','/zzz/') using SQL::Statement ok 303 - regex no match ok 304 - prepare SELECT REPEAT('zfunkY', 3) using SQL::Statement ok 305 - execute SELECT REPEAT('zfunkY', 3) using SQL::Statement ok 306 - repeat ok 307 - prepare SELECT REPLACE('zfunkY','s/z(.+)ky/$1/i') using SQL::Statement ok 308 - execute SELECT REPLACE('zfunkY','s/z(.+)ky/$1/i') using SQL::Statement ok 309 - replace ok 310 - prepare SELECT SUBSTITUTE('zfunkY','s/z(.+)ky/$1/i') using SQL::Statement ok 311 - execute SELECT SUBSTITUTE('zfunkY','s/z(.+)ky/$1/i') using SQL::Statement ok 312 - substitute ok 313 - prepare SELECT SOUNDEX('jeff','jeph') using SQL::Statement ok 314 - execute SELECT SOUNDEX('jeff','jeph') using SQL::Statement ok 315 - soundex match ok 316 - prepare SELECT SOUNDEX('jeff','quartz') using SQL::Statement ok 317 - execute SELECT SOUNDEX('jeff','quartz') using SQL::Statement ok 318 - soundex no match ok 319 - prepare SELECT SPACE(10) using SQL::Statement ok 320 - execute SELECT SPACE(10) using SQL::Statement ok 321 - space ok 322 - prepare SELECT SUBSTR('zfunkY',2,3) using SQL::Statement ok 323 - execute SELECT SUBSTR('zfunkY',2,3) using SQL::Statement ok 324 - substr ok 325 - prepare SELECT DISTINCT color FROM biz WHERE SUBSTRING(class FROM 1 FOR 1)='T' using SQL::Statement ok 326 - execute SELECT DISTINCT color FROM biz WHERE SUBSTRING(class FROM 1 FOR 1)='T' using SQL::Statement ok 327 - substring ok 328 - prepare SELECT TRANSLATE('foobar forever', 'oae', '0@3') using SQL::Statement ok 329 - execute SELECT TRANSLATE('foobar forever', 'oae', '0@3') using SQL::Statement ok 330 - translate ok 331 - prepare SELECT TRIM(' fun ') using SQL::Statement ok 332 - execute SELECT TRIM(' fun ') using SQL::Statement ok 333 - trim simple not ok 334 - prepare SELECT TRIM(LEADING FROM ' fun ') using SQL::Statement # TODO Analyze why this fails; may be thinking FROM keyword is for table specs # Failed (TODO) test 'prepare SELECT TRIM(LEADING FROM ' fun ') using SQL::Statement' # at t/06virtual.t line 1419. # Unbalanced parentheses! not ok 335 - prepare SELECT TRIM(TRAILING FROM ' fun ') using SQL::Statement # TODO Analyze why this fails; may be thinking FROM keyword is for table specs # Failed (TODO) test 'prepare SELECT TRIM(TRAILING FROM ' fun ') using SQL::Statement' # at t/06virtual.t line 1419. # Unbalanced parentheses! not ok 336 - prepare SELECT TRIM(LEADING ';' FROM ';;; fun ') using SQL::Statement # TODO Analyze why this fails; may be thinking FROM keyword is for table specs # Failed (TODO) test 'prepare SELECT TRIM(LEADING ';' FROM ';;; fun ') using SQL::Statement' # at t/06virtual.t line 1419. # Unbalanced parentheses! ok 337 - prepare SELECT UNHEX('414243') using SQL::Statement ok 338 - execute SELECT UNHEX('414243') using SQL::Statement ok 339 - unhex str ok 340 - prepare SELECT UNHEX('263A' || HEX(9787) || CONV('10011000111100', 2, 16), 'UCS-2') using SQL::Statement ok 341 - execute SELECT UNHEX('263A' || HEX(9787) || CONV('10011000111100', 2, 16), 'UCS-2') using SQL::Statement ok 342 - unhex str unicode ok 343 - prepare SELECT BIN('9788') using SQL::Statement ok 344 - execute SELECT BIN('9788') using SQL::Statement ok 345 - bin from dec ok 346 - prepare SELECT OCT('420') using SQL::Statement ok 347 - execute SELECT OCT('420') using SQL::Statement ok 348 - oct from dec ok 349 - prepare SELECT ABS(-4) using SQL::Statement ok 350 - execute SELECT ABS(-4) using SQL::Statement ok 351 - abs ok 352 - prepare SELECT CEILING(5) using SQL::Statement ok 353 - execute SELECT CEILING(5) using SQL::Statement ok 354 - ceiling int ok 355 - prepare SELECT CEILING(4.1) using SQL::Statement ok 356 - execute SELECT CEILING(4.1) using SQL::Statement ok 357 - ceiling positive ok 358 - prepare SELECT CEIL(-4.5) using SQL::Statement ok 359 - execute SELECT CEIL(-4.5) using SQL::Statement ok 360 - ceil negative ok 361 - prepare SELECT FLOOR(-5) using SQL::Statement ok 362 - execute SELECT FLOOR(-5) using SQL::Statement ok 363 - floor int ok 364 - prepare SELECT FLOOR(4.999999999999) using SQL::Statement ok 365 - execute SELECT FLOOR(4.999999999999) using SQL::Statement ok 366 - floor positive ok 367 - prepare SELECT FLOOR(-4.1) using SQL::Statement ok 368 - execute SELECT FLOOR(-4.1) using SQL::Statement ok 369 - floor negative ok 370 - prepare SELECT EXP(1) using SQL::Statement ok 371 - execute SELECT EXP(1) using SQL::Statement ok 372 - exp ok 373 - prepare SELECT LOG(6) using SQL::Statement ok 374 - execute SELECT LOG(6) using SQL::Statement ok 375 - log as log10 ok 376 - prepare SELECT LOG(2, 32) using SQL::Statement ok 377 - execute SELECT LOG(2, 32) using SQL::Statement ok 378 - log as log2 ok 379 - prepare SELECT LN(3) using SQL::Statement ok 380 - execute SELECT LN(3) using SQL::Statement ok 381 - ln ok 382 - prepare SELECT MOD(8, 5) using SQL::Statement ok 383 - execute SELECT MOD(8, 5) using SQL::Statement ok 384 - mod ok 385 - prepare SELECT POWER(2, 4) using SQL::Statement ok 386 - execute SELECT POWER(2, 4) using SQL::Statement ok 387 - power ok 388 - prepare SELECT POW(2, 4) using SQL::Statement ok 389 - execute SELECT POW(2, 4) using SQL::Statement ok 390 - pow ok 391 - prepare SELECT FLOOR(RAND(4)) using SQL::Statement ok 392 - execute SELECT FLOOR(RAND(4)) using SQL::Statement ok 393 - rand ok 394 - prepare SELECT FLOOR(RAND(4), UNIX_TIMESTAMP()) using SQL::Statement ok 395 - execute SELECT FLOOR(RAND(4), UNIX_TIMESTAMP()) using SQL::Statement ok 396 - rand with seed ok 397 - prepare SELECT ROUND(4.999999999999) using SQL::Statement ok 398 - execute SELECT ROUND(4.999999999999) using SQL::Statement ok 399 - round int ok 400 - prepare SELECT ROUND(4.542222222222, 1) using SQL::Statement ok 401 - execute SELECT ROUND(4.542222222222, 1) using SQL::Statement ok 402 - round tenth ok 403 - prepare SELECT SIGN(-25.5) using SQL::Statement ok 404 - execute SELECT SIGN(-25.5) using SQL::Statement ok 405 - sign -1 ok 406 - prepare SELECT SIGN(53645) using SQL::Statement ok 407 - execute SELECT SIGN(53645) using SQL::Statement ok 408 - sign 1 ok 409 - prepare SELECT SIGN(0) using SQL::Statement ok 410 - execute SELECT SIGN(0) using SQL::Statement ok 411 - sign 0 ok 412 - prepare SELECT SIGN(NULL) using SQL::Statement ok 413 - execute SELECT SIGN(NULL) using SQL::Statement ok 414 - sign null ok 415 - prepare SELECT SQRT(64) using SQL::Statement ok 416 - execute SELECT SQRT(64) using SQL::Statement ok 417 - sqrt ok 418 - prepare SELECT TRUNCATE(4.999999999999) using SQL::Statement ok 419 - execute SELECT TRUNCATE(4.999999999999) using SQL::Statement ok 420 - truncate int ok 421 - prepare SELECT TRUNC(-4.9) using SQL::Statement ok 422 - execute SELECT TRUNC(-4.9) using SQL::Statement ok 423 - trunc int ok 424 - prepare SELECT TRUNCATE(4.934, 1) using SQL::Statement ok 425 - execute SELECT TRUNCATE(4.934, 1) using SQL::Statement ok 426 - truncate tenth ok 427 - prepare SELECT TRUNC(-4.99999, 1) using SQL::Statement ok 428 - execute SELECT TRUNC(-4.99999, 1) using SQL::Statement ok 429 - trunc int ok 430 - prepare SELECT SIN(1) using SQL::Statement ok 431 - execute SELECT SIN(1) using SQL::Statement ok 432 - sin(1) => near? 0.841470984807897 ~= 0.841470984807897 ok 433 - prepare SELECT COS(1) using SQL::Statement ok 434 - execute SELECT COS(1) using SQL::Statement ok 435 - cos(1) => near? 0.54030230586814 ~= 0.54030230586814 ok 436 - prepare SELECT TAN(1) using SQL::Statement ok 437 - execute SELECT TAN(1) using SQL::Statement ok 438 - tan(1) => near? 1.5574077246549 ~= 1.5574077246549 ok 439 - prepare SELECT SEC(1) using SQL::Statement ok 440 - execute SELECT SEC(1) using SQL::Statement ok 441 - sec(1) => near? 1.85081571768093 ~= 1.85081571768093 ok 442 - prepare SELECT CSC(1) using SQL::Statement ok 443 - execute SELECT CSC(1) using SQL::Statement ok 444 - csc(1) => near? 1.18839510577812 ~= 1.18839510577812 ok 445 - prepare SELECT COSEC(1) using SQL::Statement ok 446 - execute SELECT COSEC(1) using SQL::Statement ok 447 - cosec(1) => near? 1.18839510577812 ~= 1.18839510577812 ok 448 - prepare SELECT COT(1) using SQL::Statement ok 449 - execute SELECT COT(1) using SQL::Statement ok 450 - cot(1) => near? 0.642092615934331 ~= 0.642092615934331 ok 451 - prepare SELECT COTAN(1) using SQL::Statement ok 452 - execute SELECT COTAN(1) using SQL::Statement ok 453 - cotan(1) => near? 0.642092615934331 ~= 0.642092615934331 ok 454 - prepare SELECT ASIN(1) using SQL::Statement ok 455 - execute SELECT ASIN(1) using SQL::Statement ok 456 - asin(1) => near? 1.5707963267949 ~= 1.5707963267949 ok 457 - prepare SELECT ACOS(1) using SQL::Statement ok 458 - execute SELECT ACOS(1) using SQL::Statement ok 459 - acos(1) => near? 0 ~= 0 ok 460 - prepare SELECT ATAN(1) using SQL::Statement ok 461 - execute SELECT ATAN(1) using SQL::Statement ok 462 - atan(1) => near? 0.785398163397448 ~= 0.785398163397448 ok 463 - prepare SELECT ASEC(1) using SQL::Statement ok 464 - execute SELECT ASEC(1) using SQL::Statement ok 465 - asec(1) => near? 0 ~= 0 ok 466 - prepare SELECT ACSC(1) using SQL::Statement ok 467 - execute SELECT ACSC(1) using SQL::Statement ok 468 - acsc(1) => near? 1.5707963267949 ~= 1.5707963267949 ok 469 - prepare SELECT ACOSEC(1) using SQL::Statement ok 470 - execute SELECT ACOSEC(1) using SQL::Statement ok 471 - acosec(1) => near? 1.5707963267949 ~= 1.5707963267949 ok 472 - prepare SELECT ACOT(1) using SQL::Statement ok 473 - execute SELECT ACOT(1) using SQL::Statement ok 474 - acot(1) => near? 0.785398163397448 ~= 0.785398163397448 ok 475 - prepare SELECT ACOTAN(1) using SQL::Statement ok 476 - execute SELECT ACOTAN(1) using SQL::Statement ok 477 - acotan(1) => near? 0.785398163397448 ~= 0.785398163397448 ok 478 - prepare SELECT SINH(1) using SQL::Statement ok 479 - execute SELECT SINH(1) using SQL::Statement ok 480 - sinh(1) => near? 1.1752011936438 ~= 1.1752011936438 ok 481 - prepare SELECT COSH(1) using SQL::Statement ok 482 - execute SELECT COSH(1) using SQL::Statement ok 483 - cosh(1) => near? 1.54308063481524 ~= 1.54308063481524 ok 484 - prepare SELECT TANH(1) using SQL::Statement ok 485 - execute SELECT TANH(1) using SQL::Statement ok 486 - tanh(1) => near? 0.761594155955765 ~= 0.761594155955765 ok 487 - prepare SELECT SECH(1) using SQL::Statement ok 488 - execute SELECT SECH(1) using SQL::Statement ok 489 - sech(1) => near? 0.648054273663885 ~= 0.648054273663885 ok 490 - prepare SELECT CSCH(1) using SQL::Statement ok 491 - execute SELECT CSCH(1) using SQL::Statement ok 492 - csch(1) => near? 0.850918128239322 ~= 0.850918128239322 ok 493 - prepare SELECT COSECH(1) using SQL::Statement ok 494 - execute SELECT COSECH(1) using SQL::Statement ok 495 - cosech(1) => near? 0.850918128239322 ~= 0.850918128239322 ok 496 - prepare SELECT COTH(1) using SQL::Statement ok 497 - execute SELECT COTH(1) using SQL::Statement ok 498 - coth(1) => near? 1.31303528549933 ~= 1.31303528549933 ok 499 - prepare SELECT COTANH(1) using SQL::Statement ok 500 - execute SELECT COTANH(1) using SQL::Statement ok 501 - cotanh(1) => near? 1.31303528549933 ~= 1.31303528549933 ok 502 - prepare SELECT ASINH(1) using SQL::Statement ok 503 - execute SELECT ASINH(1) using SQL::Statement ok 504 - asinh(1) => near? 0.881373587019543 ~= 0.881373587019543 ok 505 - prepare SELECT ACOSH(1) using SQL::Statement ok 506 - execute SELECT ACOSH(1) using SQL::Statement ok 507 - acosh(1) => near? 0 ~= 0 ok 508 - prepare SELECT ATANH(0.9) using SQL::Statement ok 509 - execute SELECT ATANH(0.9) using SQL::Statement ok 510 - atanh(0.9) => near? 1.47221948958322 ~= 1.47221948958322 ok 511 - prepare SELECT ASECH(0.9) using SQL::Statement ok 512 - execute SELECT ASECH(0.9) using SQL::Statement ok 513 - asech(0.9) => near? 0.467145308103262 ~= 0.467145308103262 ok 514 - prepare SELECT ACSCH(2) using SQL::Statement ok 515 - execute SELECT ACSCH(2) using SQL::Statement ok 516 - acsch(2) => near? 0.481211825059603 ~= 0.481211825059603 ok 517 - prepare SELECT ACOSECH(2) using SQL::Statement ok 518 - execute SELECT ACOSECH(2) using SQL::Statement ok 519 - acosech(2) => near? 0.481211825059603 ~= 0.481211825059603 ok 520 - prepare SELECT ACOTH(2) using SQL::Statement ok 521 - execute SELECT ACOTH(2) using SQL::Statement ok 522 - acoth(2) => near? 0.549306144334055 ~= 0.549306144334055 ok 523 - prepare SELECT ACOTANH(2) using SQL::Statement ok 524 - execute SELECT ACOTANH(2) using SQL::Statement ok 525 - acotanh(2) => near? 0.549306144334055 ~= 0.549306144334055 ok 526 - prepare SELECT PI using SQL::Statement ok 527 - execute SELECT PI using SQL::Statement ok 528 - pi => near? 3.14159265358979 ~= 3.14159265358979 ok 529 - prepare SELECT ATAN2(1, 0) using SQL::Statement ok 530 - execute SELECT ATAN2(1, 0) using SQL::Statement ok 531 - atan2(1, 0) => near? 1.5707963267949 ~= 1.5707963267949 ok 532 - prepare SELECT ATAN2(1, 1) using SQL::Statement ok 533 - execute SELECT ATAN2(1, 1) using SQL::Statement ok 534 - atan2(1, 1) => near? 0.785398163397448 ~= 0.785398163397448 ok 535 - prepare SELECT ATAN2(-1, -1) using SQL::Statement ok 536 - execute SELECT ATAN2(-1, -1) using SQL::Statement ok 537 - atan2(-1, -1) to -3pi/4 => near? -2.35619449019234 ~= -2.35619449019234 ok 538 - prepare SELECT TAN(0.9) using SQL::Statement ok 539 - execute SELECT TAN(0.9) using SQL::Statement ok 540 - tan(0.9) as property sin/cos => near? 1.26015821755034 ~= 1.26015821755034 ok 541 - prepare SELECT SINH(2) using SQL::Statement ok 542 - execute SELECT SINH(2) using SQL::Statement ok 543 - sinh(2) => near? 3.62686040784702 ~= 3.62686040784702 ok 544 - prepare SELECT ACSCH(0.1) using SQL::Statement ok 545 - execute SELECT ACSCH(0.1) using SQL::Statement ok 546 - acsch 0.1 => near? 2.99822295029797 ~= 2.99822295029797 ok 547 - prepare SELECT DEG2RAD(90) using SQL::Statement ok 548 - execute SELECT DEG2RAD(90) using SQL::Statement ok 549 - deg2rad(90) => near? 1.5707963267949 ~= 1.5707963267949 ok 550 - prepare SELECT RADIANS(90) using SQL::Statement ok 551 - execute SELECT RADIANS(90) using SQL::Statement ok 552 - radians(90) => near? 1.5707963267949 ~= 1.5707963267949 ok 553 - prepare SELECT RAD2DEG(PI) using SQL::Statement ok 554 - execute SELECT RAD2DEG(PI) using SQL::Statement ok 555 - rad2deg(PI) => near? 180 ~= 180 ok 556 - prepare SELECT DEGREES(PI()) using SQL::Statement ok 557 - execute SELECT DEGREES(PI()) using SQL::Statement ok 558 - degrees(PI) => near? 180 ~= 180 ok 559 - prepare SELECT DEG2GRAD(0.9) using SQL::Statement ok 560 - execute SELECT DEG2GRAD(0.9) using SQL::Statement ok 561 - deg2grad(0.9) => near? 1 ~= 1 ok 562 - prepare SELECT GRAD2DEG(50) using SQL::Statement ok 563 - execute SELECT GRAD2DEG(50) using SQL::Statement ok 564 - grad2deg(50) => near? 45 ~= 45 ok 565 - prepare SELECT RAD2GRAD(PI/2) using SQL::Statement # TODO Known limitation. Parser/Engine can not handle properly ok 566 - execute SELECT RAD2GRAD(PI/2) using SQL::Statement # TODO Known limitation. Parser/Engine can not handle properly ok 567 - rad2grad(pi/2) => near? 99.9999999999999 ~= 100 # TODO Known limitation. Parser/Engine can not handle properly ok 568 - prepare SELECT RAD2GRAD(PI) using SQL::Statement ok 569 - execute SELECT RAD2GRAD(PI) using SQL::Statement ok 570 - rad2grad(pi) => near? 200 ~= 200 ok 571 - prepare SELECT GRAD2RAD(200) using SQL::Statement ok 572 - execute SELECT GRAD2RAD(200) using SQL::Statement ok 573 - grad2rad(200) => near? 3.14159265358979 ~= 3.14159265358979 ok 574 - prepare SELECT DEG2RAD(10000000000) using SQL::Statement ok 575 - execute SELECT DEG2RAD(10000000000) using SQL::Statement ok 576 - lotta radians - deg2rad(10000000000) => near? 4.88692191243172 ~= 4.88692191243172 ok 577 - prepare SELECT RAD2DEG(-10000000000) using SQL::Statement ok 578 - execute SELECT RAD2DEG(-10000000000) using SQL::Statement ok 579 - negative degrees - rad2deg(-10000000000) => near? -330.8232421875 ~= -330.8232421875 ok 580 - prepare SELECT RAD2DEG(10000) using SQL::Statement ok 581 - execute SELECT RAD2DEG(10000) using SQL::Statement ok 582 - positive degrees - rad2deg(10000) => near? 197.795130823273 ~= 197.795130823273 ok 583 - prepare SELECT TANH(100) using SQL::Statement ok 584 - execute SELECT TANH(100) using SQL::Statement ok 585 - tanh 100 => near? 1 ~= 1 ok 586 - prepare SELECT COTH(100) using SQL::Statement ok 587 - execute SELECT COTH(100) using SQL::Statement ok 588 - coth 100 => near? 1 ~= 1 ok 589 - prepare SELECT TANH(-100) using SQL::Statement ok 590 - execute SELECT TANH(-100) using SQL::Statement ok 591 - tanh -100 => near? -1 ~= -1 ok 592 - prepare SELECT COTH(-100) using SQL::Statement ok 593 - execute SELECT COTH(-100) using SQL::Statement ok 594 - coth -100 => near? -1 ~= -1 ok 595 - prepare SELECT SECH(100000) using SQL::Statement ok 596 - execute SELECT SECH(100000) using SQL::Statement ok 597 - sech 1e5 => near? 0 ~= 0 ok 598 - prepare SELECT CSCH(100000) using SQL::Statement ok 599 - execute SELECT CSCH(100000) using SQL::Statement ok 600 - csch 1e5 => near? 0 ~= 0 ok 601 - prepare SELECT TANH(100000) using SQL::Statement ok 602 - execute SELECT TANH(100000) using SQL::Statement ok 603 - tanh 1e5 => near? 1 ~= 1 ok 604 - prepare SELECT COTH(100000) using SQL::Statement ok 605 - execute SELECT COTH(100000) using SQL::Statement ok 606 - coth 1e5 => near? 1 ~= 1 ok 607 - prepare SELECT SECH(-100000) using SQL::Statement ok 608 - execute SELECT SECH(-100000) using SQL::Statement ok 609 - sech -1e5 => near? 0 ~= 0 ok 610 - prepare SELECT CSCH(-100000) using SQL::Statement ok 611 - execute SELECT CSCH(-100000) using SQL::Statement ok 612 - csch -1e5 => near? 0 ~= 0 ok 613 - prepare SELECT TANH(-100000) using SQL::Statement ok 614 - execute SELECT TANH(-100000) using SQL::Statement ok 615 - tanh -1e5 => near? -1 ~= -1 ok 616 - prepare SELECT COTH(-100000) using SQL::Statement ok 617 - execute SELECT COTH(-100000) using SQL::Statement ok 618 - coth -1e5 => near? -1 ~= -1 ok 619 - prepare SELECT DBNAME() using SQL::Statement ok 620 - execute SELECT DBNAME() using SQL::Statement ok 621 - dbname ok 622 - prepare SELECT USERNAME() using SQL::Statement ok 623 - execute SELECT USERNAME() using SQL::Statement ok 624 - username ok 625 - prepare SELECT USER() using SQL::Statement ok 626 - execute SELECT USER() using SQL::Statement ok 627 - user ok 628 - prepare SELECT id,host,signature,message FROM log WHERE time_stamp < (1460110712 - ( 4 * 60 )) using SQL::Statement ok 629 - execute SELECT id,host,signature,message FROM log WHERE time_stamp < (1460110712 - ( 4 * 60 )) using SQL::Statement ok 630 - SELECT with calculation in WHERE CLAUSE ok 631 - prepare SELECT id,host,signature,message FROM log WHERE (time_stamp > (1460110712 - 5)) AND (time_stamp < (1460110712 + 5)) using SQL::Statement ok 632 - execute SELECT id,host,signature,message FROM log WHERE (time_stamp > (1460110712 - 5)) AND (time_stamp < (1460110712 + 5)) using SQL::Statement ok 633 - SELECT with calculation and logical expression in WHERE CLAUSE ok 634 - prepare SELECT id,host,signature,message FROM log WHERE time_stamp BETWEEN ( 1460110712 - 5, 1460110712 + 5) using SQL::Statement ok 635 - execute SELECT id,host,signature,message FROM log WHERE time_stamp BETWEEN ( 1460110712 - 5, 1460110712 + 5) using SQL::Statement ok 636 - SELECT with calculated items in BETWEEN in WHERE CLAUSE ok 637 - prepare SELECT MAX(time_stamp) FROM log WHERE time_stamp IN (1460110712 - (2*3600), 1460110712 - (4*3600)) using SQL::Statement ok 638 - execute SELECT MAX(time_stamp) FROM log WHERE time_stamp IN (1460110712 - (2*3600), 1460110712 - (4*3600)) using SQL::Statement ok 639 - MAX() with calculated WHERE clause ok 640 - prepare SELECT MAX(time_stamp - 3*3600) FROM log using SQL::Statement ok 641 - execute SELECT MAX(time_stamp - 3*3600) FROM log using SQL::Statement ok 642 - calculation in MAX() not ok 643 - prepare SELECT MAX(time_stamp) - 3*3600 FROM log using SQL::Statement # TODO Known limitation. Parser/Engine can not handle properly # Failed (TODO) test 'prepare SELECT MAX(time_stamp) - 3*3600 FROM log using SQL::Statement' # at t/06virtual.t line 1419. # Bad table or column name: 'MAX' is a SQL reserved word! ok 644 - prepare SELECT MAX( CHAR_LENGTH(message) ) FROM log using SQL::Statement ok 645 - execute SELECT MAX( CHAR_LENGTH(message) ) FROM log using SQL::Statement ok 646 - function in MAX() ok 647 - prepare SELECT 1+0 from log using SQL::Statement ok 648 - execute SELECT 1+0 from log using SQL::Statement ok 649 - select simple calculated constant from table ok 650 - prepare SELECT 1+1*2 using SQL::Statement ok 651 - execute SELECT 1+1*2 using SQL::Statement ok 652 - select calculated constant with preceedence rules ok 653 - prepare SELECT 1 using SQL::Statement ok 654 - execute SELECT 1 using SQL::Statement ok 655 - SELECT not calculated constant # Running tests for DBD::CSV ok 656 - prepare CREATE TABLE biz (sales INTEGER, class CHAR, color CHAR, BUGNULL CHAR) on DBD::CSV ok 657 - execute CREATE TABLE biz (sales INTEGER, class CHAR, color CHAR, BUGNULL CHAR) on DBD::CSV ok 658 - prepare INSERT INTO biz VALUES (1000, 'Car', 'White', NULL) on DBD::CSV ok 659 - execute INSERT INTO biz VALUES (1000, 'Car', 'White', NULL) on DBD::CSV ok 660 - prepare INSERT INTO biz VALUES ( 500, 'Car', 'Blue', NULL ) on DBD::CSV ok 661 - execute INSERT INTO biz VALUES ( 500, 'Car', 'Blue', NULL ) on DBD::CSV ok 662 - prepare INSERT INTO biz VALUES ( 400, 'Truck', 'White', NULL ) on DBD::CSV ok 663 - execute INSERT INTO biz VALUES ( 400, 'Truck', 'White', NULL ) on DBD::CSV ok 664 - prepare INSERT INTO biz VALUES ( 700, 'Car', 'Red', NULL ) on DBD::CSV ok 665 - execute INSERT INTO biz VALUES ( 700, 'Car', 'Red', NULL ) on DBD::CSV ok 666 - prepare INSERT INTO biz VALUES ( 300, 'Truck', 'White', NULL ) on DBD::CSV ok 667 - execute INSERT INTO biz VALUES ( 300, 'Truck', 'White', NULL ) on DBD::CSV ok 668 - prepare CREATE TABLE baz (ordered INTEGER, class CHAR, color CHAR) on DBD::CSV ok 669 - execute CREATE TABLE baz (ordered INTEGER, class CHAR, color CHAR) on DBD::CSV ok 670 - prepare INSERT INTO baz VALUES ( 250, 'Car', 'White' ), ( 100, 'Car', 'Blue' ), ( 150, 'Car', 'Red' ) on DBD::CSV ok 671 - execute INSERT INTO baz VALUES ( 250, 'Car', 'White' ), ( 100, 'Car', 'Blue' ), ( 150, 'Car', 'Red' ) on DBD::CSV ok 672 - prepare INSERT INTO baz VALUES ( 80, 'Truck', 'White' ), ( 60, 'Truck', 'Green' ) -- Yes, we introduce new cars :) on DBD::CSV ok 673 - execute INSERT INTO baz VALUES ( 80, 'Truck', 'White' ), ( 60, 'Truck', 'Green' ) -- Yes, we introduce new cars :) on DBD::CSV ok 674 - prepare INSERT INTO baz VALUES ( 666, 'Truck', 'Yellow -- no, blue' ) -- Double dash inside quotes does not introduce comment on DBD::CSV ok 675 - execute INSERT INTO baz VALUES ( 666, 'Truck', 'Yellow -- no, blue' ) -- Double dash inside quotes does not introduce comment on DBD::CSV ok 676 - prepare CREATE TABLE numbers (c_foo INTEGER, foo CHAR, bar INTEGER) on DBD::CSV ok 677 - execute CREATE TABLE numbers (c_foo INTEGER, foo CHAR, bar INTEGER) on DBD::CSV ok 678 - prepare CREATE TABLE trick (id INTEGER, foo CHAR) on DBD::CSV ok 679 - execute CREATE TABLE trick (id INTEGER, foo CHAR) on DBD::CSV ok 680 - prepare INSERT INTO trick VALUES (1, '1foo') on DBD::CSV ok 681 - execute INSERT INTO trick VALUES (1, '1foo') on DBD::CSV ok 682 - prepare INSERT INTO trick VALUES (11, 'foo') on DBD::CSV ok 683 - execute INSERT INTO trick VALUES (11, 'foo') on DBD::CSV ok 684 - prepare CREATE TYPE TIMESTAMP on DBD::CSV ok 685 - execute CREATE TYPE TIMESTAMP on DBD::CSV ok 686 - prepare CREATE TABLE log (id INT, host CHAR, signature CHAR, message CHAR, time_stamp TIMESTAMP) on DBD::CSV ok 687 - execute CREATE TABLE log (id INT, host CHAR, signature CHAR, message CHAR, time_stamp TIMESTAMP) on DBD::CSV ok 688 - prepare INSERT INTO log VALUES (1, 'bert', '/netbsd', 'Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,', 1460110713) on DBD::CSV ok 689 - execute INSERT INTO log VALUES (1, 'bert', '/netbsd', 'Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,', 1460110713) on DBD::CSV ok 690 - prepare INSERT INTO log VALUES (2, 'bert', '/netbsd', '2006, 2007, 2008, 2009, 2010', 1460110713) on DBD::CSV ok 691 - execute INSERT INTO log VALUES (2, 'bert', '/netbsd', '2006, 2007, 2008, 2009, 2010', 1460110713) on DBD::CSV ok 692 - prepare INSERT INTO log VALUES (3, 'bert', '/netbsd', 'The NetBSD Foundation, Inc. All rights reserved.', 1460110713) on DBD::CSV ok 693 - execute INSERT INTO log VALUES (3, 'bert', '/netbsd', 'The NetBSD Foundation, Inc. All rights reserved.', 1460110713) on DBD::CSV ok 694 - prepare INSERT INTO log VALUES (4, 'bert', '/netbsd', 'Copyright (c) 1982, 1986, 1989, 1991, 1993', 1460110713) on DBD::CSV ok 695 - execute INSERT INTO log VALUES (4, 'bert', '/netbsd', 'Copyright (c) 1982, 1986, 1989, 1991, 1993', 1460110713) on DBD::CSV ok 696 - prepare INSERT INTO log VALUES (5, 'bert', '/netbsd', 'The Regents of the University of California. All rights reserved.', 1460110713) on DBD::CSV ok 697 - execute INSERT INTO log VALUES (5, 'bert', '/netbsd', 'The Regents of the University of California. All rights reserved.', 1460110713) on DBD::CSV ok 698 - prepare INSERT INTO log VALUES (6, 'bert', '/netbsd', '', 1460110713) on DBD::CSV ok 699 - execute INSERT INTO log VALUES (6, 'bert', '/netbsd', '', 1460110713) on DBD::CSV ok 700 - prepare INSERT INTO log VALUES (7, 'bert', '/netbsd', 'NetBSD 5.99.39 (BERT) \#0: Fri Oct 8 06:23:03 CEST 2010', 1460110713) on DBD::CSV ok 701 - execute INSERT INTO log VALUES (7, 'bert', '/netbsd', 'NetBSD 5.99.39 (BERT) \#0: Fri Oct 8 06:23:03 CEST 2010', 1460110713) on DBD::CSV ok 702 - prepare INSERT INTO log VALUES (8, 'ernie', 'rpc.statd', 'starting', 1460107113) on DBD::CSV ok 703 - execute INSERT INTO log VALUES (8, 'ernie', 'rpc.statd', 'starting', 1460107113) on DBD::CSV ok 704 - prepare INSERT INTO log VALUES (9, 'ernie', 'savecore', 'no core dump', 1460103513) on DBD::CSV ok 705 - execute INSERT INTO log VALUES (9, 'ernie', 'savecore', 'no core dump', 1460103513) on DBD::CSV ok 706 - prepare INSERT INTO log VALUES (10, 'ernie', 'postfix/postfix-script', 'starting the Postfix mail system', 1460099913) on DBD::CSV ok 707 - execute INSERT INTO log VALUES (10, 'ernie', 'postfix/postfix-script', 'starting the Postfix mail system', 1460099913) on DBD::CSV ok 708 - prepare INSERT INTO log VALUES (11, 'ernie', 'rpcbind', 'connect from 127.0.0.1 to dump()', 1460096313) on DBD::CSV ok 709 - execute INSERT INTO log VALUES (11, 'ernie', 'rpcbind', 'connect from 127.0.0.1 to dump()', 1460096313) on DBD::CSV ok 710 - prepare INSERT INTO log VALUES (12, 'ernie', 'sshd', 'last message repeated 2 times', 1460092713) on DBD::CSV ok 711 - execute INSERT INTO log VALUES (12, 'ernie', 'sshd', 'last message repeated 2 times', 1460092713) on DBD::CSV ok 712 - prepare INSERT INTO log VALUES (13, 'ernie', 'shutdown', 'poweroff by root:', 1460089113) on DBD::CSV ok 713 - execute INSERT INTO log VALUES (13, 'ernie', 'shutdown', 'poweroff by root:', 1460089113) on DBD::CSV ok 714 - prepare INSERT INTO log VALUES (14, 'ernie', 'shutdown', 'rebooted by root', 1460085513) on DBD::CSV ok 715 - execute INSERT INTO log VALUES (14, 'ernie', 'shutdown', 'rebooted by root', 1460085513) on DBD::CSV ok 716 - prepare INSERT INTO log VALUES (15, 'ernie', 'sshd', 'Server listening on :: port 22.', 1460081913) on DBD::CSV ok 717 - execute INSERT INTO log VALUES (15, 'ernie', 'sshd', 'Server listening on :: port 22.', 1460081913) on DBD::CSV ok 718 - prepare INSERT INTO log VALUES (16, 'ernie', 'sshd', 'Server listening on 0.0.0.0 port 22.', 1460078313) on DBD::CSV ok 719 - execute INSERT INTO log VALUES (16, 'ernie', 'sshd', 'Server listening on 0.0.0.0 port 22.', 1460078313) on DBD::CSV ok 720 - prepare INSERT INTO log VALUES (17, 'ernie', 'sshd', 'Received SIGHUP; restarting.', 1460074713) on DBD::CSV ok 721 - execute INSERT INTO log VALUES (17, 'ernie', 'sshd', 'Received SIGHUP; restarting.', 1460074713) on DBD::CSV ok 722 - prepare SELECT class,SUM(sales) as foo, MAX(sales) FROM biz GROUP BY class using DBD::CSV ok 723 - execute SELECT class,SUM(sales) as foo, MAX(sales) FROM biz GROUP BY class using DBD::CSV ok 724 - GROUP BY one column ok 725 - prepare SELECT color,class,SUM(sales), MAX(sales) FROM biz GROUP BY color,class using DBD::CSV ok 726 - execute SELECT color,class,SUM(sales), MAX(sales) FROM biz GROUP BY color,class using DBD::CSV ok 727 - GROUP BY several columns ok 728 - prepare SELECT SUM(sales), MAX(sales) FROM biz using DBD::CSV ok 729 - execute SELECT SUM(sales), MAX(sales) FROM biz using DBD::CSV ok 730 - AGGREGATE FUNCTIONS WITHOUT GROUP BY ok 731 - prepare SELECT COUNT(DISTINCT class) FROM biz using DBD::CSV ok 732 - execute SELECT COUNT(DISTINCT class) FROM biz using DBD::CSV ok 733 - COUNT(distinct column) WITHOUT GROUP BY ok 734 - prepare SELECT distinct class, COUNT(distinct color) FROM biz GROUP BY class using DBD::CSV ok 735 - execute SELECT distinct class, COUNT(distinct color) FROM biz GROUP BY class using DBD::CSV ok 736 - COUNT(distinct column) WITH GROUP BY ok 737 - prepare SELECT class, COUNT(*) FROM biz GROUP BY class using DBD::CSV ok 738 - execute SELECT class, COUNT(*) FROM biz GROUP BY class using DBD::CSV ok 739 - COUNT(*) with GROUP BY ok 740 - prepare SELECT DISTINCT biz.class, baz.color AS foo FROM biz, baz WHERE biz.class = baz.class ORDER BY foo using DBD::CSV ok 741 - execute SELECT DISTINCT biz.class, baz.color AS foo FROM biz, baz WHERE biz.class = baz.class ORDER BY foo using DBD::CSV ok 742 - ORDER BY on aliased column ok 743 - prepare SELECT class, COUNT(distinct *) FROM biz GROUP BY class using DBD::CSV fails ok 744 - COUNT(DISTINCT *) fails ok 745 - prepare SELECT class, COUNT(color) FROM biz using DBD::CSV ok 746 - execute SELECT class, COUNT(color) FROM biz using DBD::CSV fails ok 747 - GROUP BY required ok 748 - prepare SELECT SUM(bar) FROM numbers using DBD::CSV ok 749 - execute SELECT SUM(bar) FROM numbers using DBD::CSV ok 750 - SUM(bar) of empty table ok 751 - prepare SELECT COUNT(bar),c_foo FROM numbers GROUP BY c_foo using DBD::CSV ok 752 - execute SELECT COUNT(bar),c_foo FROM numbers GROUP BY c_foo using DBD::CSV ok 753 - COUNT(bar) of empty table with GROUP BY ok 754 - prepare SELECT COUNT(*) FROM numbers using DBD::CSV ok 755 - execute SELECT COUNT(*) FROM numbers using DBD::CSV ok 756 - COUNT(*) of empty table ok 757 - prepare INSERT INTO numbers VALUES (?, ?, ?) using DBD::CSV ok 758 - 1 .. 3999: execute INSERT INTO numbers VALUES (?, ?, ?) using DBD::CSV ok 759 - prepare SELECT foo AS boo, COUNT (*) AS counted FROM numbers GROUP BY boo using DBD::CSV ok 760 - execute SELECT foo AS boo, COUNT (*) AS counted FROM numbers GROUP BY boo using DBD::CSV ok 761 - Columns in Number of rows in aggregated Table ok 762 - Number of rows in aggregated Table ok 763 - SUM(COUNTED) ok 764 - prepare SELECT MIN(c_foo), MAX(c_foo), AVG(c_foo) FROM numbers using DBD::CSV ok 765 - execute SELECT MIN(c_foo), MAX(c_foo), AVG(c_foo) FROM numbers using DBD::CSV ok 766 - Aggregate functions MIN, MAX, AVG ok 767 - prepare SELECT COUNT(*) FROM trick using DBD::CSV ok 768 - execute SELECT COUNT(*) FROM trick using DBD::CSV ok 769 - COUNT(*) internal for nasty table ok 770 - prepare SELECT CURRENT_DATE() using DBD::CSV ok 771 - execute SELECT CURRENT_DATE() using DBD::CSV ok 772 - current_date int ok 773 - prepare SELECT CURRENT_TIME using DBD::CSV ok 774 - execute SELECT CURRENT_TIME using DBD::CSV ok 775 - current_time int ok 776 - prepare SELECT CURRENT_TIMESTAMP() using DBD::CSV ok 777 - execute SELECT CURRENT_TIMESTAMP() using DBD::CSV ok 778 - current_timestamp int ok 779 - prepare SELECT CURDATE using DBD::CSV ok 780 - execute SELECT CURDATE using DBD::CSV ok 781 - curdate int ok 782 - prepare SELECT CURTIME() using DBD::CSV ok 783 - execute SELECT CURTIME() using DBD::CSV ok 784 - curtime int ok 785 - prepare SELECT NOW using DBD::CSV ok 786 - execute SELECT NOW using DBD::CSV ok 787 - now int ok 788 - prepare SELECT UNIX_TIMESTAMP() using DBD::CSV ok 789 - execute SELECT UNIX_TIMESTAMP() using DBD::CSV ok 790 - unix_timestamp int ok 791 - prepare SELECT CURRENT_TIME (1) using DBD::CSV ok 792 - execute SELECT CURRENT_TIME (1) using DBD::CSV ok 793 - current_time precision ok 794 - prepare SELECT CURRENT_TIMESTAMP (2) using DBD::CSV ok 795 - execute SELECT CURRENT_TIMESTAMP (2) using DBD::CSV ok 796 - current_timestamp precision ok 797 - prepare SELECT CURTIME (3) using DBD::CSV ok 798 - execute SELECT CURTIME (3) using DBD::CSV ok 799 - curtime precision ok 800 - prepare SELECT NOW(4) using DBD::CSV ok 801 - execute SELECT NOW(4) using DBD::CSV ok 802 - now precision ok 803 - prepare SELECT UNIX_TIMESTAMP(5) using DBD::CSV ok 804 - execute SELECT UNIX_TIMESTAMP(5) using DBD::CSV ok 805 - unix_timestamp precision ok 806 - prepare SELECT ASCII('A') using DBD::CSV ok 807 - execute SELECT ASCII('A') using DBD::CSV ok 808 - ascii char ok 809 - prepare SELECT ASCII('ABC') using DBD::CSV ok 810 - execute SELECT ASCII('ABC') using DBD::CSV ok 811 - ascii str ok 812 - prepare SELECT CHAR() using DBD::CSV ok 813 - execute SELECT CHAR() using DBD::CSV ok 814 - char blank ok 815 - prepare SELECT CHAR(65) using DBD::CSV ok 816 - execute SELECT CHAR(65) using DBD::CSV ok 817 - char char ok 818 - prepare SELECT CHAR(CONV('263A', 16)) using DBD::CSV ok 819 - execute SELECT CHAR(CONV('263A', 16)) using DBD::CSV ok 820 - char char unicode ok 821 - prepare SELECT CHAR(CONV('263A', 16), 9787, CONV('10011000111100', 2)) using DBD::CSV ok 822 - execute SELECT CHAR(CONV('263A', 16), 9787, CONV('10011000111100', 2)) using DBD::CSV ok 823 - char str unicode ok 824 - prepare SELECT CHAR(65,66,67) using DBD::CSV ok 825 - execute SELECT CHAR(65,66,67) using DBD::CSV ok 826 - char str ok 827 - prepare SELECT BIT_LENGTH(' oo') using DBD::CSV ok 828 - execute SELECT BIT_LENGTH(' oo') using DBD::CSV ok 829 - bit_length 6bit ok 830 - prepare SELECT BIT_LENGTH('foo') using DBD::CSV ok 831 - execute SELECT BIT_LENGTH('foo') using DBD::CSV ok 832 - bit_length 7bit ok 833 - prepare SELECT BIT_LENGTH(CHAR(9786, 9787, 9788)) using DBD::CSV ok 834 - execute SELECT BIT_LENGTH(CHAR(9786, 9787, 9788)) using DBD::CSV ok 835 - bit_length unicode ok 836 - prepare SELECT CHARACTER_LENGTH('foo') using DBD::CSV ok 837 - execute SELECT CHARACTER_LENGTH('foo') using DBD::CSV ok 838 - character_length ok 839 - prepare SELECT CHAR_LENGTH('foo') using DBD::CSV ok 840 - execute SELECT CHAR_LENGTH('foo') using DBD::CSV ok 841 - char_length ok 842 - prepare SELECT CHARACTER_LENGTH(CHAR(9786, 9787, 9788)) using DBD::CSV ok 843 - execute SELECT CHARACTER_LENGTH(CHAR(9786, 9787, 9788)) using DBD::CSV ok 844 - character_length unicode ok 845 - prepare SELECT CHAR_LENGTH(CHAR(9786, 9787, 9788)) using DBD::CSV ok 846 - execute SELECT CHAR_LENGTH(CHAR(9786, 9787, 9788)) using DBD::CSV ok 847 - char_length unicode ok 848 - prepare SELECT COALESCE(NULL,'z') using DBD::CSV ok 849 - execute SELECT COALESCE(NULL,'z') using DBD::CSV ok 850 - coalesce ok 851 - prepare SELECT NVL(NULL,'z') using DBD::CSV ok 852 - execute SELECT NVL(NULL,'z') using DBD::CSV ok 853 - nvl ok 854 - prepare SELECT IFNULL(NULL,'z') using DBD::CSV ok 855 - execute SELECT IFNULL(NULL,'z') using DBD::CSV ok 856 - ifnull ok 857 - prepare SELECT CONCAT('A','B') using DBD::CSV ok 858 - execute SELECT CONCAT('A','B') using DBD::CSV ok 859 - concat good ok 860 - prepare SELECT CONCAT('A',NULL) using DBD::CSV ok 861 - execute SELECT CONCAT('A',NULL) using DBD::CSV ok 862 - concat bad ok 863 - prepare SELECT CONV('10101001111011101101011', 2, 64) using DBD::CSV ok 864 - execute SELECT CONV('10101001111011101101011', 2, 64) using DBD::CSV ok 865 - conv 2->64 ok 866 - prepare SELECT CONV('10101001111011101101011', 2, 16) using DBD::CSV ok 867 - execute SELECT CONV('10101001111011101101011', 2, 16) using DBD::CSV ok 868 - conv 2->16 ok 869 - prepare SELECT CONV('10101001111011101101011', 2, 10) using DBD::CSV ok 870 - execute SELECT CONV('10101001111011101101011', 2, 10) using DBD::CSV ok 871 - conv 2->10 ok 872 - prepare SELECT CONV('10101001111011101101011', 2, 8) using DBD::CSV ok 873 - execute SELECT CONV('10101001111011101101011', 2, 8) using DBD::CSV ok 874 - conv 2->8 ok 875 - prepare SELECT CONV('10101001111011101101011', 2, 2) using DBD::CSV ok 876 - execute SELECT CONV('10101001111011101101011', 2, 2) using DBD::CSV ok 877 - conv 2->2 ok 878 - prepare select conv('16', 10, 16) using DBD::CSV ok 879 - execute select conv('16', 10, 16) using DBD::CSV ok 880 - conv 10->16 integer with trailing 0 ok 881 - prepare select conv('0', 10, 16) using DBD::CSV ok 882 - execute select conv('0', 10, 16) using DBD::CSV ok 883 - conv 10->16 integer 0 ok 884 - prepare SELECT DISTINCT DECODE(color,'White','W','Red','R','B') AS cfc FROM biz ORDER BY cfc using DBD::CSV ok 885 - execute SELECT DISTINCT DECODE(color,'White','W','Red','R','B') AS cfc FROM biz ORDER BY cfc using DBD::CSV ok 886 - decode ok 887 - prepare SELECT INSERT('foodieland', 4, 3, 'bar') using DBD::CSV ok 888 - execute SELECT INSERT('foodieland', 4, 3, 'bar') using DBD::CSV ok 889 - insert good 1:1 ok 890 - prepare SELECT INSERT('foodland', 4, 1, 'bar') using DBD::CSV ok 891 - execute SELECT INSERT('foodland', 4, 1, 'bar') using DBD::CSV ok 892 - insert good non-1:1 ok 893 - prepare SELECT INSERT(NULL, 4, 1, 'bar') using DBD::CSV ok 894 - execute SELECT INSERT(NULL, 4, 1, 'bar') using DBD::CSV ok 895 - insert bad 1 ok 896 - prepare SELECT INSERT('foodland', 4, 1, NULL) using DBD::CSV ok 897 - execute SELECT INSERT('foodland', 4, 1, NULL) using DBD::CSV ok 898 - insert bad 2 ok 899 - prepare SELECT LEFT('foodland', 4) using DBD::CSV ok 900 - execute SELECT LEFT('foodland', 4) using DBD::CSV ok 901 - left good ok 902 - prepare SELECT LEFT(NULL, 4) using DBD::CSV ok 903 - execute SELECT LEFT(NULL, 4) using DBD::CSV ok 904 - left bad 1 ok 905 - prepare SELECT LEFT('foodland', NULL) using DBD::CSV ok 906 - execute SELECT LEFT('foodland', NULL) using DBD::CSV ok 907 - left bad 2 ok 908 - prepare SELECT RIGHT('foodland', 4) using DBD::CSV ok 909 - execute SELECT RIGHT('foodland', 4) using DBD::CSV ok 910 - right good ok 911 - prepare SELECT RIGHT(NULL, 4) using DBD::CSV ok 912 - execute SELECT RIGHT(NULL, 4) using DBD::CSV ok 913 - right bad 1 ok 914 - prepare SELECT RIGHT('foodland', NULL) using DBD::CSV ok 915 - execute SELECT RIGHT('foodland', NULL) using DBD::CSV ok 916 - right bad 2 ok 917 - prepare SELECT LOCATE('a','bar') using DBD::CSV ok 918 - execute SELECT LOCATE('a','bar') using DBD::CSV ok 919 - locate 2param ok 920 - prepare SELECT LOCATE('a','barafa',3) using DBD::CSV ok 921 - execute SELECT LOCATE('a','barafa',3) using DBD::CSV ok 922 - locate 3param ok 923 - prepare SELECT POSITION('a','bar') using DBD::CSV ok 924 - execute SELECT POSITION('a','bar') using DBD::CSV ok 925 - position 2param ok 926 - prepare SELECT POSITION('a','barafa',3) using DBD::CSV ok 927 - execute SELECT POSITION('a','barafa',3) using DBD::CSV ok 928 - position 3param ok 929 - prepare SELECT LOWER('A') using DBD::CSV ok 930 - execute SELECT LOWER('A') using DBD::CSV ok 931 - lower ok 932 - prepare SELECT UPPER('a') using DBD::CSV ok 933 - execute SELECT UPPER('a') using DBD::CSV ok 934 - upper ok 935 - prepare SELECT LCASE('A') using DBD::CSV ok 936 - execute SELECT LCASE('A') using DBD::CSV ok 937 - lcase ok 938 - prepare SELECT UCASE('a') using DBD::CSV ok 939 - execute SELECT UCASE('a') using DBD::CSV ok 940 - ucase ok 941 - prepare SELECT LTRIM(' fun ') using DBD::CSV ok 942 - execute SELECT LTRIM(' fun ') using DBD::CSV ok 943 - ltrim ok 944 - prepare SELECT RTRIM(' fun ') using DBD::CSV ok 945 - execute SELECT RTRIM(' fun ') using DBD::CSV ok 946 - rtrim ok 947 - prepare SELECT OCTET_LENGTH('foo') using DBD::CSV ok 948 - execute SELECT OCTET_LENGTH('foo') using DBD::CSV ok 949 - octet_length ok 950 - prepare SELECT OCTET_LENGTH(CHAR(64, 169, 9786, 65572)) using DBD::CSV ok 951 - execute SELECT OCTET_LENGTH(CHAR(64, 169, 9786, 65572)) using DBD::CSV ok 952 - octet_length unicode ok 953 - prepare SELECT REGEX('jeff','/EF/i') using DBD::CSV ok 954 - execute SELECT REGEX('jeff','/EF/i') using DBD::CSV ok 955 - regex match ok 956 - prepare SELECT REGEX('jeff','/zzz/') using DBD::CSV ok 957 - execute SELECT REGEX('jeff','/zzz/') using DBD::CSV ok 958 - regex no match ok 959 - prepare SELECT REPEAT('zfunkY', 3) using DBD::CSV ok 960 - execute SELECT REPEAT('zfunkY', 3) using DBD::CSV ok 961 - repeat ok 962 - prepare SELECT REPLACE('zfunkY','s/z(.+)ky/$1/i') using DBD::CSV ok 963 - execute SELECT REPLACE('zfunkY','s/z(.+)ky/$1/i') using DBD::CSV ok 964 - replace ok 965 - prepare SELECT SUBSTITUTE('zfunkY','s/z(.+)ky/$1/i') using DBD::CSV ok 966 - execute SELECT SUBSTITUTE('zfunkY','s/z(.+)ky/$1/i') using DBD::CSV ok 967 - substitute ok 968 - prepare SELECT SOUNDEX('jeff','jeph') using DBD::CSV ok 969 - execute SELECT SOUNDEX('jeff','jeph') using DBD::CSV ok 970 - soundex match ok 971 - prepare SELECT SOUNDEX('jeff','quartz') using DBD::CSV ok 972 - execute SELECT SOUNDEX('jeff','quartz') using DBD::CSV ok 973 - soundex no match ok 974 - prepare SELECT SPACE(10) using DBD::CSV ok 975 - execute SELECT SPACE(10) using DBD::CSV ok 976 - space ok 977 - prepare SELECT SUBSTR('zfunkY',2,3) using DBD::CSV ok 978 - execute SELECT SUBSTR('zfunkY',2,3) using DBD::CSV ok 979 - substr ok 980 - prepare SELECT DISTINCT color FROM biz WHERE SUBSTRING(class FROM 1 FOR 1)='T' using DBD::CSV ok 981 - execute SELECT DISTINCT color FROM biz WHERE SUBSTRING(class FROM 1 FOR 1)='T' using DBD::CSV ok 982 - substring ok 983 - prepare SELECT TRANSLATE('foobar forever', 'oae', '0@3') using DBD::CSV ok 984 - execute SELECT TRANSLATE('foobar forever', 'oae', '0@3') using DBD::CSV ok 985 - translate ok 986 - prepare SELECT TRIM(' fun ') using DBD::CSV ok 987 - execute SELECT TRIM(' fun ') using DBD::CSV ok 988 - trim simple not ok 989 - prepare SELECT TRIM(LEADING FROM ' fun ') using DBD::CSV # TODO Analyze why this fails; may be thinking FROM keyword is for table specs # Failed (TODO) test 'prepare SELECT TRIM(LEADING FROM ' fun ') using DBD::CSV' # at t/06virtual.t line 1419. # Unbalanced parentheses! not ok 990 - prepare SELECT TRIM(TRAILING FROM ' fun ') using DBD::CSV # TODO Analyze why this fails; may be thinking FROM keyword is for table specs # Failed (TODO) test 'prepare SELECT TRIM(TRAILING FROM ' fun ') using DBD::CSV' # at t/06virtual.t line 1419. # Unbalanced parentheses! not ok 991 - prepare SELECT TRIM(LEADING ';' FROM ';;; fun ') using DBD::CSV # TODO Analyze why this fails; may be thinking FROM keyword is for table specs # Failed (TODO) test 'prepare SELECT TRIM(LEADING ';' FROM ';;; fun ') using DBD::CSV' # at t/06virtual.t line 1419. # Unbalanced parentheses! ok 992 - prepare SELECT UNHEX('414243') using DBD::CSV ok 993 - execute SELECT UNHEX('414243') using DBD::CSV ok 994 - unhex str ok 995 - prepare SELECT UNHEX('263A' || HEX(9787) || CONV('10011000111100', 2, 16), 'UCS-2') using DBD::CSV ok 996 - execute SELECT UNHEX('263A' || HEX(9787) || CONV('10011000111100', 2, 16), 'UCS-2') using DBD::CSV ok 997 - unhex str unicode ok 998 - prepare SELECT BIN('9788') using DBD::CSV ok 999 - execute SELECT BIN('9788') using DBD::CSV ok 1000 - bin from dec ok 1001 - prepare SELECT OCT('420') using DBD::CSV ok 1002 - execute SELECT OCT('420') using DBD::CSV ok 1003 - oct from dec ok 1004 - prepare SELECT ABS(-4) using DBD::CSV ok 1005 - execute SELECT ABS(-4) using DBD::CSV ok 1006 - abs ok 1007 - prepare SELECT CEILING(5) using DBD::CSV ok 1008 - execute SELECT CEILING(5) using DBD::CSV ok 1009 - ceiling int ok 1010 - prepare SELECT CEILING(4.1) using DBD::CSV ok 1011 - execute SELECT CEILING(4.1) using DBD::CSV ok 1012 - ceiling positive ok 1013 - prepare SELECT CEIL(-4.5) using DBD::CSV ok 1014 - execute SELECT CEIL(-4.5) using DBD::CSV ok 1015 - ceil negative ok 1016 - prepare SELECT FLOOR(-5) using DBD::CSV ok 1017 - execute SELECT FLOOR(-5) using DBD::CSV ok 1018 - floor int ok 1019 - prepare SELECT FLOOR(4.999999999999) using DBD::CSV ok 1020 - execute SELECT FLOOR(4.999999999999) using DBD::CSV ok 1021 - floor positive ok 1022 - prepare SELECT FLOOR(-4.1) using DBD::CSV ok 1023 - execute SELECT FLOOR(-4.1) using DBD::CSV ok 1024 - floor negative ok 1025 - prepare SELECT EXP(1) using DBD::CSV ok 1026 - execute SELECT EXP(1) using DBD::CSV ok 1027 - exp ok 1028 - prepare SELECT LOG(6) using DBD::CSV ok 1029 - execute SELECT LOG(6) using DBD::CSV ok 1030 - log as log10 ok 1031 - prepare SELECT LOG(2, 32) using DBD::CSV ok 1032 - execute SELECT LOG(2, 32) using DBD::CSV ok 1033 - log as log2 ok 1034 - prepare SELECT LN(3) using DBD::CSV ok 1035 - execute SELECT LN(3) using DBD::CSV ok 1036 - ln ok 1037 - prepare SELECT MOD(8, 5) using DBD::CSV ok 1038 - execute SELECT MOD(8, 5) using DBD::CSV ok 1039 - mod ok 1040 - prepare SELECT POWER(2, 4) using DBD::CSV ok 1041 - execute SELECT POWER(2, 4) using DBD::CSV ok 1042 - power ok 1043 - prepare SELECT POW(2, 4) using DBD::CSV ok 1044 - execute SELECT POW(2, 4) using DBD::CSV ok 1045 - pow ok 1046 - prepare SELECT FLOOR(RAND(4)) using DBD::CSV ok 1047 - execute SELECT FLOOR(RAND(4)) using DBD::CSV ok 1048 - rand ok 1049 - prepare SELECT FLOOR(RAND(4), UNIX_TIMESTAMP()) using DBD::CSV ok 1050 - execute SELECT FLOOR(RAND(4), UNIX_TIMESTAMP()) using DBD::CSV ok 1051 - rand with seed ok 1052 - prepare SELECT ROUND(4.999999999999) using DBD::CSV ok 1053 - execute SELECT ROUND(4.999999999999) using DBD::CSV ok 1054 - round int ok 1055 - prepare SELECT ROUND(4.542222222222, 1) using DBD::CSV ok 1056 - execute SELECT ROUND(4.542222222222, 1) using DBD::CSV ok 1057 - round tenth ok 1058 - prepare SELECT SIGN(-25.5) using DBD::CSV ok 1059 - execute SELECT SIGN(-25.5) using DBD::CSV ok 1060 - sign -1 ok 1061 - prepare SELECT SIGN(53645) using DBD::CSV ok 1062 - execute SELECT SIGN(53645) using DBD::CSV ok 1063 - sign 1 ok 1064 - prepare SELECT SIGN(0) using DBD::CSV ok 1065 - execute SELECT SIGN(0) using DBD::CSV ok 1066 - sign 0 ok 1067 - prepare SELECT SIGN(NULL) using DBD::CSV ok 1068 - execute SELECT SIGN(NULL) using DBD::CSV ok 1069 - sign null ok 1070 - prepare SELECT SQRT(64) using DBD::CSV ok 1071 - execute SELECT SQRT(64) using DBD::CSV ok 1072 - sqrt ok 1073 - prepare SELECT TRUNCATE(4.999999999999) using DBD::CSV ok 1074 - execute SELECT TRUNCATE(4.999999999999) using DBD::CSV ok 1075 - truncate int ok 1076 - prepare SELECT TRUNC(-4.9) using DBD::CSV ok 1077 - execute SELECT TRUNC(-4.9) using DBD::CSV ok 1078 - trunc int ok 1079 - prepare SELECT TRUNCATE(4.934, 1) using DBD::CSV ok 1080 - execute SELECT TRUNCATE(4.934, 1) using DBD::CSV ok 1081 - truncate tenth ok 1082 - prepare SELECT TRUNC(-4.99999, 1) using DBD::CSV ok 1083 - execute SELECT TRUNC(-4.99999, 1) using DBD::CSV ok 1084 - trunc int ok 1085 - prepare SELECT SIN(1) using DBD::CSV ok 1086 - execute SELECT SIN(1) using DBD::CSV ok 1087 - sin(1) => near? 0.841470984807897 ~= 0.841470984807897 ok 1088 - prepare SELECT COS(1) using DBD::CSV ok 1089 - execute SELECT COS(1) using DBD::CSV ok 1090 - cos(1) => near? 0.54030230586814 ~= 0.54030230586814 ok 1091 - prepare SELECT TAN(1) using DBD::CSV ok 1092 - execute SELECT TAN(1) using DBD::CSV ok 1093 - tan(1) => near? 1.5574077246549 ~= 1.5574077246549 ok 1094 - prepare SELECT SEC(1) using DBD::CSV ok 1095 - execute SELECT SEC(1) using DBD::CSV ok 1096 - sec(1) => near? 1.85081571768093 ~= 1.85081571768093 ok 1097 - prepare SELECT CSC(1) using DBD::CSV ok 1098 - execute SELECT CSC(1) using DBD::CSV ok 1099 - csc(1) => near? 1.18839510577812 ~= 1.18839510577812 ok 1100 - prepare SELECT COSEC(1) using DBD::CSV ok 1101 - execute SELECT COSEC(1) using DBD::CSV ok 1102 - cosec(1) => near? 1.18839510577812 ~= 1.18839510577812 ok 1103 - prepare SELECT COT(1) using DBD::CSV ok 1104 - execute SELECT COT(1) using DBD::CSV ok 1105 - cot(1) => near? 0.642092615934331 ~= 0.642092615934331 ok 1106 - prepare SELECT COTAN(1) using DBD::CSV ok 1107 - execute SELECT COTAN(1) using DBD::CSV ok 1108 - cotan(1) => near? 0.642092615934331 ~= 0.642092615934331 ok 1109 - prepare SELECT ASIN(1) using DBD::CSV ok 1110 - execute SELECT ASIN(1) using DBD::CSV ok 1111 - asin(1) => near? 1.5707963267949 ~= 1.5707963267949 ok 1112 - prepare SELECT ACOS(1) using DBD::CSV ok 1113 - execute SELECT ACOS(1) using DBD::CSV ok 1114 - acos(1) => near? 0 ~= 0 ok 1115 - prepare SELECT ATAN(1) using DBD::CSV ok 1116 - execute SELECT ATAN(1) using DBD::CSV ok 1117 - atan(1) => near? 0.785398163397448 ~= 0.785398163397448 ok 1118 - prepare SELECT ASEC(1) using DBD::CSV ok 1119 - execute SELECT ASEC(1) using DBD::CSV ok 1120 - asec(1) => near? 0 ~= 0 ok 1121 - prepare SELECT ACSC(1) using DBD::CSV ok 1122 - execute SELECT ACSC(1) using DBD::CSV ok 1123 - acsc(1) => near? 1.5707963267949 ~= 1.5707963267949 ok 1124 - prepare SELECT ACOSEC(1) using DBD::CSV ok 1125 - execute SELECT ACOSEC(1) using DBD::CSV ok 1126 - acosec(1) => near? 1.5707963267949 ~= 1.5707963267949 ok 1127 - prepare SELECT ACOT(1) using DBD::CSV ok 1128 - execute SELECT ACOT(1) using DBD::CSV ok 1129 - acot(1) => near? 0.785398163397448 ~= 0.785398163397448 ok 1130 - prepare SELECT ACOTAN(1) using DBD::CSV ok 1131 - execute SELECT ACOTAN(1) using DBD::CSV ok 1132 - acotan(1) => near? 0.785398163397448 ~= 0.785398163397448 ok 1133 - prepare SELECT SINH(1) using DBD::CSV ok 1134 - execute SELECT SINH(1) using DBD::CSV ok 1135 - sinh(1) => near? 1.1752011936438 ~= 1.1752011936438 ok 1136 - prepare SELECT COSH(1) using DBD::CSV ok 1137 - execute SELECT COSH(1) using DBD::CSV ok 1138 - cosh(1) => near? 1.54308063481524 ~= 1.54308063481524 ok 1139 - prepare SELECT TANH(1) using DBD::CSV ok 1140 - execute SELECT TANH(1) using DBD::CSV ok 1141 - tanh(1) => near? 0.761594155955765 ~= 0.761594155955765 ok 1142 - prepare SELECT SECH(1) using DBD::CSV ok 1143 - execute SELECT SECH(1) using DBD::CSV ok 1144 - sech(1) => near? 0.648054273663885 ~= 0.648054273663885 ok 1145 - prepare SELECT CSCH(1) using DBD::CSV ok 1146 - execute SELECT CSCH(1) using DBD::CSV ok 1147 - csch(1) => near? 0.850918128239322 ~= 0.850918128239322 ok 1148 - prepare SELECT COSECH(1) using DBD::CSV ok 1149 - execute SELECT COSECH(1) using DBD::CSV ok 1150 - cosech(1) => near? 0.850918128239322 ~= 0.850918128239322 ok 1151 - prepare SELECT COTH(1) using DBD::CSV ok 1152 - execute SELECT COTH(1) using DBD::CSV ok 1153 - coth(1) => near? 1.31303528549933 ~= 1.31303528549933 ok 1154 - prepare SELECT COTANH(1) using DBD::CSV ok 1155 - execute SELECT COTANH(1) using DBD::CSV ok 1156 - cotanh(1) => near? 1.31303528549933 ~= 1.31303528549933 ok 1157 - prepare SELECT ASINH(1) using DBD::CSV ok 1158 - execute SELECT ASINH(1) using DBD::CSV ok 1159 - asinh(1) => near? 0.881373587019543 ~= 0.881373587019543 ok 1160 - prepare SELECT ACOSH(1) using DBD::CSV ok 1161 - execute SELECT ACOSH(1) using DBD::CSV ok 1162 - acosh(1) => near? 0 ~= 0 ok 1163 - prepare SELECT ATANH(0.9) using DBD::CSV ok 1164 - execute SELECT ATANH(0.9) using DBD::CSV ok 1165 - atanh(0.9) => near? 1.47221948958322 ~= 1.47221948958322 ok 1166 - prepare SELECT ASECH(0.9) using DBD::CSV ok 1167 - execute SELECT ASECH(0.9) using DBD::CSV ok 1168 - asech(0.9) => near? 0.467145308103262 ~= 0.467145308103262 ok 1169 - prepare SELECT ACSCH(2) using DBD::CSV ok 1170 - execute SELECT ACSCH(2) using DBD::CSV ok 1171 - acsch(2) => near? 0.481211825059603 ~= 0.481211825059603 ok 1172 - prepare SELECT ACOSECH(2) using DBD::CSV ok 1173 - execute SELECT ACOSECH(2) using DBD::CSV ok 1174 - acosech(2) => near? 0.481211825059603 ~= 0.481211825059603 ok 1175 - prepare SELECT ACOTH(2) using DBD::CSV ok 1176 - execute SELECT ACOTH(2) using DBD::CSV ok 1177 - acoth(2) => near? 0.549306144334055 ~= 0.549306144334055 ok 1178 - prepare SELECT ACOTANH(2) using DBD::CSV ok 1179 - execute SELECT ACOTANH(2) using DBD::CSV ok 1180 - acotanh(2) => near? 0.549306144334055 ~= 0.549306144334055 ok 1181 - prepare SELECT PI using DBD::CSV ok 1182 - execute SELECT PI using DBD::CSV ok 1183 - pi => near? 3.14159265358979 ~= 3.14159265358979 ok 1184 - prepare SELECT ATAN2(1, 0) using DBD::CSV ok 1185 - execute SELECT ATAN2(1, 0) using DBD::CSV ok 1186 - atan2(1, 0) => near? 1.5707963267949 ~= 1.5707963267949 ok 1187 - prepare SELECT ATAN2(1, 1) using DBD::CSV ok 1188 - execute SELECT ATAN2(1, 1) using DBD::CSV ok 1189 - atan2(1, 1) => near? 0.785398163397448 ~= 0.785398163397448 ok 1190 - prepare SELECT ATAN2(-1, -1) using DBD::CSV ok 1191 - execute SELECT ATAN2(-1, -1) using DBD::CSV ok 1192 - atan2(-1, -1) to -3pi/4 => near? -2.35619449019234 ~= -2.35619449019234 ok 1193 - prepare SELECT TAN(0.9) using DBD::CSV ok 1194 - execute SELECT TAN(0.9) using DBD::CSV ok 1195 - tan(0.9) as property sin/cos => near? 1.26015821755034 ~= 1.26015821755034 ok 1196 - prepare SELECT SINH(2) using DBD::CSV ok 1197 - execute SELECT SINH(2) using DBD::CSV ok 1198 - sinh(2) => near? 3.62686040784702 ~= 3.62686040784702 ok 1199 - prepare SELECT ACSCH(0.1) using DBD::CSV ok 1200 - execute SELECT ACSCH(0.1) using DBD::CSV ok 1201 - acsch 0.1 => near? 2.99822295029797 ~= 2.99822295029797 ok 1202 - prepare SELECT DEG2RAD(90) using DBD::CSV ok 1203 - execute SELECT DEG2RAD(90) using DBD::CSV ok 1204 - deg2rad(90) => near? 1.5707963267949 ~= 1.5707963267949 ok 1205 - prepare SELECT RADIANS(90) using DBD::CSV ok 1206 - execute SELECT RADIANS(90) using DBD::CSV ok 1207 - radians(90) => near? 1.5707963267949 ~= 1.5707963267949 ok 1208 - prepare SELECT RAD2DEG(PI) using DBD::CSV ok 1209 - execute SELECT RAD2DEG(PI) using DBD::CSV ok 1210 - rad2deg(PI) => near? 180 ~= 180 ok 1211 - prepare SELECT DEGREES(PI()) using DBD::CSV ok 1212 - execute SELECT DEGREES(PI()) using DBD::CSV ok 1213 - degrees(PI) => near? 180 ~= 180 ok 1214 - prepare SELECT DEG2GRAD(0.9) using DBD::CSV ok 1215 - execute SELECT DEG2GRAD(0.9) using DBD::CSV ok 1216 - deg2grad(0.9) => near? 1 ~= 1 ok 1217 - prepare SELECT GRAD2DEG(50) using DBD::CSV ok 1218 - execute SELECT GRAD2DEG(50) using DBD::CSV ok 1219 - grad2deg(50) => near? 45 ~= 45 ok 1220 - prepare SELECT RAD2GRAD(PI/2) using DBD::CSV # TODO Known limitation. Parser/Engine can not handle properly ok 1221 - execute SELECT RAD2GRAD(PI/2) using DBD::CSV # TODO Known limitation. Parser/Engine can not handle properly ok 1222 - rad2grad(pi/2) => near? 99.9999999999999 ~= 100 # TODO Known limitation. Parser/Engine can not handle properly ok 1223 - prepare SELECT RAD2GRAD(PI) using DBD::CSV ok 1224 - execute SELECT RAD2GRAD(PI) using DBD::CSV ok 1225 - rad2grad(pi) => near? 200 ~= 200 ok 1226 - prepare SELECT GRAD2RAD(200) using DBD::CSV ok 1227 - execute SELECT GRAD2RAD(200) using DBD::CSV ok 1228 - grad2rad(200) => near? 3.14159265358979 ~= 3.14159265358979 ok 1229 - prepare SELECT DEG2RAD(10000000000) using DBD::CSV ok 1230 - execute SELECT DEG2RAD(10000000000) using DBD::CSV ok 1231 - lotta radians - deg2rad(10000000000) => near? 4.88692191243172 ~= 4.88692191243172 ok 1232 - prepare SELECT RAD2DEG(-10000000000) using DBD::CSV ok 1233 - execute SELECT RAD2DEG(-10000000000) using DBD::CSV ok 1234 - negative degrees - rad2deg(-10000000000) => near? -330.8232421875 ~= -330.8232421875 ok 1235 - prepare SELECT RAD2DEG(10000) using DBD::CSV ok 1236 - execute SELECT RAD2DEG(10000) using DBD::CSV ok 1237 - positive degrees - rad2deg(10000) => near? 197.795130823273 ~= 197.795130823273 ok 1238 - prepare SELECT TANH(100) using DBD::CSV ok 1239 - execute SELECT TANH(100) using DBD::CSV ok 1240 - tanh 100 => near? 1 ~= 1 ok 1241 - prepare SELECT COTH(100) using DBD::CSV ok 1242 - execute SELECT COTH(100) using DBD::CSV ok 1243 - coth 100 => near? 1 ~= 1 ok 1244 - prepare SELECT TANH(-100) using DBD::CSV ok 1245 - execute SELECT TANH(-100) using DBD::CSV ok 1246 - tanh -100 => near? -1 ~= -1 ok 1247 - prepare SELECT COTH(-100) using DBD::CSV ok 1248 - execute SELECT COTH(-100) using DBD::CSV ok 1249 - coth -100 => near? -1 ~= -1 ok 1250 - prepare SELECT SECH(100000) using DBD::CSV ok 1251 - execute SELECT SECH(100000) using DBD::CSV ok 1252 - sech 1e5 => near? 0 ~= 0 ok 1253 - prepare SELECT CSCH(100000) using DBD::CSV ok 1254 - execute SELECT CSCH(100000) using DBD::CSV ok 1255 - csch 1e5 => near? 0 ~= 0 ok 1256 - prepare SELECT TANH(100000) using DBD::CSV ok 1257 - execute SELECT TANH(100000) using DBD::CSV ok 1258 - tanh 1e5 => near? 1 ~= 1 ok 1259 - prepare SELECT COTH(100000) using DBD::CSV ok 1260 - execute SELECT COTH(100000) using DBD::CSV ok 1261 - coth 1e5 => near? 1 ~= 1 ok 1262 - prepare SELECT SECH(-100000) using DBD::CSV ok 1263 - execute SELECT SECH(-100000) using DBD::CSV ok 1264 - sech -1e5 => near? 0 ~= 0 ok 1265 - prepare SELECT CSCH(-100000) using DBD::CSV ok 1266 - execute SELECT CSCH(-100000) using DBD::CSV ok 1267 - csch -1e5 => near? 0 ~= 0 ok 1268 - prepare SELECT TANH(-100000) using DBD::CSV ok 1269 - execute SELECT TANH(-100000) using DBD::CSV ok 1270 - tanh -1e5 => near? -1 ~= -1 ok 1271 - prepare SELECT COTH(-100000) using DBD::CSV ok 1272 - execute SELECT COTH(-100000) using DBD::CSV ok 1273 - coth -1e5 => near? -1 ~= -1 ok 1274 - prepare SELECT DBNAME() using DBD::CSV ok 1275 - execute SELECT DBNAME() using DBD::CSV ok 1276 - dbname ok 1277 - prepare SELECT USERNAME() using DBD::CSV ok 1278 - execute SELECT USERNAME() using DBD::CSV ok 1279 - username ok 1280 - prepare SELECT USER() using DBD::CSV ok 1281 - execute SELECT USER() using DBD::CSV ok 1282 - user ok 1283 - prepare SELECT id,host,signature,message FROM log WHERE time_stamp < (1460110713 - ( 4 * 60 )) using DBD::CSV ok 1284 - execute SELECT id,host,signature,message FROM log WHERE time_stamp < (1460110713 - ( 4 * 60 )) using DBD::CSV ok 1285 - SELECT with calculation in WHERE CLAUSE ok 1286 - prepare SELECT id,host,signature,message FROM log WHERE (time_stamp > (1460110713 - 5)) AND (time_stamp < (1460110713 + 5)) using DBD::CSV ok 1287 - execute SELECT id,host,signature,message FROM log WHERE (time_stamp > (1460110713 - 5)) AND (time_stamp < (1460110713 + 5)) using DBD::CSV ok 1288 - SELECT with calculation and logical expression in WHERE CLAUSE ok 1289 - prepare SELECT id,host,signature,message FROM log WHERE time_stamp BETWEEN ( 1460110713 - 5, 1460110713 + 5) using DBD::CSV ok 1290 - execute SELECT id,host,signature,message FROM log WHERE time_stamp BETWEEN ( 1460110713 - 5, 1460110713 + 5) using DBD::CSV ok 1291 - SELECT with calculated items in BETWEEN in WHERE CLAUSE ok 1292 - prepare SELECT MAX(time_stamp) FROM log WHERE time_stamp IN (1460110713 - (2*3600), 1460110713 - (4*3600)) using DBD::CSV ok 1293 - execute SELECT MAX(time_stamp) FROM log WHERE time_stamp IN (1460110713 - (2*3600), 1460110713 - (4*3600)) using DBD::CSV ok 1294 - MAX() with calculated WHERE clause ok 1295 - prepare SELECT MAX(time_stamp - 3*3600) FROM log using DBD::CSV ok 1296 - execute SELECT MAX(time_stamp - 3*3600) FROM log using DBD::CSV ok 1297 - calculation in MAX() ok 1298 - prepare SELECT MAX(time_stamp) - 3*3600 FROM log using DBD::CSV not ok 1299 - execute SELECT MAX(time_stamp) - 3*3600 FROM log using DBD::CSV # TODO Known limitation. Parser/Engine can not handle properly # Failed (TODO) test 'execute SELECT MAX(time_stamp) - 3*3600 FROM log using DBD::CSV' # at t/06virtual.t line 1468. # Can't find table containing column named 'max' at /Users/fly1600/cpanfly-5.16/var/cpan/build/SQL-Statement-1.409-HsNhn9/blib/lib/SQL/Statement/Function.pm line 222. not ok 1300 - Caclulation outside aggregation # TODO Known limitation. Parser/Engine can not handle properly # Failed (TODO) test 'Caclulation outside aggregation' # at t/06virtual.t line 1499. # Structures begin differing at: # $got->[0] = Does not exist # $expected->[0] = ARRAY(0x100da1710) ok 1301 - prepare SELECT MAX( CHAR_LENGTH(message) ) FROM log using DBD::CSV ok 1302 - execute SELECT MAX( CHAR_LENGTH(message) ) FROM log using DBD::CSV ok 1303 - function in MAX() ok 1304 - prepare SELECT 1+0 from log using DBD::CSV ok 1305 - execute SELECT 1+0 from log using DBD::CSV ok 1306 - select simple calculated constant from table ok 1307 - prepare SELECT 1+1*2 using DBD::CSV ok 1308 - execute SELECT 1+1*2 using DBD::CSV ok 1309 - select calculated constant with preceedence rules ok 1310 - prepare SELECT 1 using DBD::CSV ok 1311 - execute SELECT 1 using DBD::CSV ok 1312 - SELECT not calculated constant # Running tests for DBD::File ok 1313 - prepare CREATE TEMP TABLE biz (sales INTEGER, class CHAR, color CHAR, BUGNULL CHAR) on DBD::File ok 1314 - execute CREATE TEMP TABLE biz (sales INTEGER, class CHAR, color CHAR, BUGNULL CHAR) on DBD::File ok 1315 - prepare INSERT INTO biz VALUES (1000, 'Car', 'White', NULL) on DBD::File ok 1316 - execute INSERT INTO biz VALUES (1000, 'Car', 'White', NULL) on DBD::File ok 1317 - prepare INSERT INTO biz VALUES ( 500, 'Car', 'Blue', NULL ) on DBD::File ok 1318 - execute INSERT INTO biz VALUES ( 500, 'Car', 'Blue', NULL ) on DBD::File ok 1319 - prepare INSERT INTO biz VALUES ( 400, 'Truck', 'White', NULL ) on DBD::File ok 1320 - execute INSERT INTO biz VALUES ( 400, 'Truck', 'White', NULL ) on DBD::File ok 1321 - prepare INSERT INTO biz VALUES ( 700, 'Car', 'Red', NULL ) on DBD::File ok 1322 - execute INSERT INTO biz VALUES ( 700, 'Car', 'Red', NULL ) on DBD::File ok 1323 - prepare INSERT INTO biz VALUES ( 300, 'Truck', 'White', NULL ) on DBD::File ok 1324 - execute INSERT INTO biz VALUES ( 300, 'Truck', 'White', NULL ) on DBD::File ok 1325 - prepare CREATE TEMP TABLE baz (ordered INTEGER, class CHAR, color CHAR) on DBD::File ok 1326 - execute CREATE TEMP TABLE baz (ordered INTEGER, class CHAR, color CHAR) on DBD::File ok 1327 - prepare INSERT INTO baz VALUES ( 250, 'Car', 'White' ), ( 100, 'Car', 'Blue' ), ( 150, 'Car', 'Red' ) on DBD::File ok 1328 - execute INSERT INTO baz VALUES ( 250, 'Car', 'White' ), ( 100, 'Car', 'Blue' ), ( 150, 'Car', 'Red' ) on DBD::File ok 1329 - prepare INSERT INTO baz VALUES ( 80, 'Truck', 'White' ), ( 60, 'Truck', 'Green' ) -- Yes, we introduce new cars :) on DBD::File ok 1330 - execute INSERT INTO baz VALUES ( 80, 'Truck', 'White' ), ( 60, 'Truck', 'Green' ) -- Yes, we introduce new cars :) on DBD::File ok 1331 - prepare INSERT INTO baz VALUES ( 666, 'Truck', 'Yellow -- no, blue' ) -- Double dash inside quotes does not introduce comment on DBD::File ok 1332 - execute INSERT INTO baz VALUES ( 666, 'Truck', 'Yellow -- no, blue' ) -- Double dash inside quotes does not introduce comment on DBD::File ok 1333 - prepare CREATE TEMP TABLE numbers (c_foo INTEGER, foo CHAR, bar INTEGER) on DBD::File ok 1334 - execute CREATE TEMP TABLE numbers (c_foo INTEGER, foo CHAR, bar INTEGER) on DBD::File ok 1335 - prepare CREATE TEMP TABLE trick (id INTEGER, foo CHAR) on DBD::File ok 1336 - execute CREATE TEMP TABLE trick (id INTEGER, foo CHAR) on DBD::File ok 1337 - prepare INSERT INTO trick VALUES (1, '1foo') on DBD::File ok 1338 - execute INSERT INTO trick VALUES (1, '1foo') on DBD::File ok 1339 - prepare INSERT INTO trick VALUES (11, 'foo') on DBD::File ok 1340 - execute INSERT INTO trick VALUES (11, 'foo') on DBD::File ok 1341 - prepare CREATE TYPE TIMESTAMP on DBD::File ok 1342 - execute CREATE TYPE TIMESTAMP on DBD::File ok 1343 - prepare CREATE TEMP TABLE log (id INT, host CHAR, signature CHAR, message CHAR, time_stamp TIMESTAMP) on DBD::File ok 1344 - execute CREATE TEMP TABLE log (id INT, host CHAR, signature CHAR, message CHAR, time_stamp TIMESTAMP) on DBD::File ok 1345 - prepare INSERT INTO log VALUES (1, 'bert', '/netbsd', 'Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,', 1460110716) on DBD::File ok 1346 - execute INSERT INTO log VALUES (1, 'bert', '/netbsd', 'Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,', 1460110716) on DBD::File ok 1347 - prepare INSERT INTO log VALUES (2, 'bert', '/netbsd', '2006, 2007, 2008, 2009, 2010', 1460110716) on DBD::File ok 1348 - execute INSERT INTO log VALUES (2, 'bert', '/netbsd', '2006, 2007, 2008, 2009, 2010', 1460110716) on DBD::File ok 1349 - prepare INSERT INTO log VALUES (3, 'bert', '/netbsd', 'The NetBSD Foundation, Inc. All rights reserved.', 1460110716) on DBD::File ok 1350 - execute INSERT INTO log VALUES (3, 'bert', '/netbsd', 'The NetBSD Foundation, Inc. All rights reserved.', 1460110716) on DBD::File ok 1351 - prepare INSERT INTO log VALUES (4, 'bert', '/netbsd', 'Copyright (c) 1982, 1986, 1989, 1991, 1993', 1460110716) on DBD::File ok 1352 - execute INSERT INTO log VALUES (4, 'bert', '/netbsd', 'Copyright (c) 1982, 1986, 1989, 1991, 1993', 1460110716) on DBD::File ok 1353 - prepare INSERT INTO log VALUES (5, 'bert', '/netbsd', 'The Regents of the University of California. All rights reserved.', 1460110716) on DBD::File ok 1354 - execute INSERT INTO log VALUES (5, 'bert', '/netbsd', 'The Regents of the University of California. All rights reserved.', 1460110716) on DBD::File ok 1355 - prepare INSERT INTO log VALUES (6, 'bert', '/netbsd', '', 1460110716) on DBD::File ok 1356 - execute INSERT INTO log VALUES (6, 'bert', '/netbsd', '', 1460110716) on DBD::File ok 1357 - prepare INSERT INTO log VALUES (7, 'bert', '/netbsd', 'NetBSD 5.99.39 (BERT) \#0: Fri Oct 8 06:23:03 CEST 2010', 1460110716) on DBD::File ok 1358 - execute INSERT INTO log VALUES (7, 'bert', '/netbsd', 'NetBSD 5.99.39 (BERT) \#0: Fri Oct 8 06:23:03 CEST 2010', 1460110716) on DBD::File ok 1359 - prepare INSERT INTO log VALUES (8, 'ernie', 'rpc.statd', 'starting', 1460107116) on DBD::File ok 1360 - execute INSERT INTO log VALUES (8, 'ernie', 'rpc.statd', 'starting', 1460107116) on DBD::File ok 1361 - prepare INSERT INTO log VALUES (9, 'ernie', 'savecore', 'no core dump', 1460103516) on DBD::File ok 1362 - execute INSERT INTO log VALUES (9, 'ernie', 'savecore', 'no core dump', 1460103516) on DBD::File ok 1363 - prepare INSERT INTO log VALUES (10, 'ernie', 'postfix/postfix-script', 'starting the Postfix mail system', 1460099916) on DBD::File ok 1364 - execute INSERT INTO log VALUES (10, 'ernie', 'postfix/postfix-script', 'starting the Postfix mail system', 1460099916) on DBD::File ok 1365 - prepare INSERT INTO log VALUES (11, 'ernie', 'rpcbind', 'connect from 127.0.0.1 to dump()', 1460096316) on DBD::File ok 1366 - execute INSERT INTO log VALUES (11, 'ernie', 'rpcbind', 'connect from 127.0.0.1 to dump()', 1460096316) on DBD::File ok 1367 - prepare INSERT INTO log VALUES (12, 'ernie', 'sshd', 'last message repeated 2 times', 1460092716) on DBD::File ok 1368 - execute INSERT INTO log VALUES (12, 'ernie', 'sshd', 'last message repeated 2 times', 1460092716) on DBD::File ok 1369 - prepare INSERT INTO log VALUES (13, 'ernie', 'shutdown', 'poweroff by root:', 1460089116) on DBD::File ok 1370 - execute INSERT INTO log VALUES (13, 'ernie', 'shutdown', 'poweroff by root:', 1460089116) on DBD::File ok 1371 - prepare INSERT INTO log VALUES (14, 'ernie', 'shutdown', 'rebooted by root', 1460085516) on DBD::File ok 1372 - execute INSERT INTO log VALUES (14, 'ernie', 'shutdown', 'rebooted by root', 1460085516) on DBD::File ok 1373 - prepare INSERT INTO log VALUES (15, 'ernie', 'sshd', 'Server listening on :: port 22.', 1460081916) on DBD::File ok 1374 - execute INSERT INTO log VALUES (15, 'ernie', 'sshd', 'Server listening on :: port 22.', 1460081916) on DBD::File ok 1375 - prepare INSERT INTO log VALUES (16, 'ernie', 'sshd', 'Server listening on 0.0.0.0 port 22.', 1460078316) on DBD::File ok 1376 - execute INSERT INTO log VALUES (16, 'ernie', 'sshd', 'Server listening on 0.0.0.0 port 22.', 1460078316) on DBD::File ok 1377 - prepare INSERT INTO log VALUES (17, 'ernie', 'sshd', 'Received SIGHUP; restarting.', 1460074716) on DBD::File ok 1378 - execute INSERT INTO log VALUES (17, 'ernie', 'sshd', 'Received SIGHUP; restarting.', 1460074716) on DBD::File ok 1379 - prepare SELECT class,SUM(sales) as foo, MAX(sales) FROM biz GROUP BY class using DBD::File ok 1380 - execute SELECT class,SUM(sales) as foo, MAX(sales) FROM biz GROUP BY class using DBD::File ok 1381 - GROUP BY one column ok 1382 - prepare SELECT color,class,SUM(sales), MAX(sales) FROM biz GROUP BY color,class using DBD::File ok 1383 - execute SELECT color,class,SUM(sales), MAX(sales) FROM biz GROUP BY color,class using DBD::File ok 1384 - GROUP BY several columns ok 1385 - prepare SELECT SUM(sales), MAX(sales) FROM biz using DBD::File ok 1386 - execute SELECT SUM(sales), MAX(sales) FROM biz using DBD::File ok 1387 - AGGREGATE FUNCTIONS WITHOUT GROUP BY ok 1388 - prepare SELECT COUNT(DISTINCT class) FROM biz using DBD::File ok 1389 - execute SELECT COUNT(DISTINCT class) FROM biz using DBD::File ok 1390 - COUNT(distinct column) WITHOUT GROUP BY ok 1391 - prepare SELECT distinct class, COUNT(distinct color) FROM biz GROUP BY class using DBD::File ok 1392 - execute SELECT distinct class, COUNT(distinct color) FROM biz GROUP BY class using DBD::File ok 1393 - COUNT(distinct column) WITH GROUP BY ok 1394 - prepare SELECT class, COUNT(*) FROM biz GROUP BY class using DBD::File ok 1395 - execute SELECT class, COUNT(*) FROM biz GROUP BY class using DBD::File ok 1396 - COUNT(*) with GROUP BY ok 1397 - prepare SELECT DISTINCT biz.class, baz.color AS foo FROM biz, baz WHERE biz.class = baz.class ORDER BY foo using DBD::File ok 1398 - execute SELECT DISTINCT biz.class, baz.color AS foo FROM biz, baz WHERE biz.class = baz.class ORDER BY foo using DBD::File ok 1399 - ORDER BY on aliased column ok 1400 - prepare SELECT class, COUNT(distinct *) FROM biz GROUP BY class using DBD::File fails ok 1401 - COUNT(DISTINCT *) fails ok 1402 - prepare SELECT class, COUNT(color) FROM biz using DBD::File ok 1403 - execute SELECT class, COUNT(color) FROM biz using DBD::File fails ok 1404 - GROUP BY required ok 1405 - prepare SELECT SUM(bar) FROM numbers using DBD::File ok 1406 - execute SELECT SUM(bar) FROM numbers using DBD::File ok 1407 - SUM(bar) of empty table ok 1408 - prepare SELECT COUNT(bar),c_foo FROM numbers GROUP BY c_foo using DBD::File ok 1409 - execute SELECT COUNT(bar),c_foo FROM numbers GROUP BY c_foo using DBD::File ok 1410 - COUNT(bar) of empty table with GROUP BY ok 1411 - prepare SELECT COUNT(*) FROM numbers using DBD::File ok 1412 - execute SELECT COUNT(*) FROM numbers using DBD::File ok 1413 - COUNT(*) of empty table ok 1414 - prepare INSERT INTO numbers VALUES (?, ?, ?) using DBD::File ok 1415 - 1 .. 3999: execute INSERT INTO numbers VALUES (?, ?, ?) using DBD::File ok 1416 - prepare SELECT foo AS boo, COUNT (*) AS counted FROM numbers GROUP BY boo using DBD::File ok 1417 - execute SELECT foo AS boo, COUNT (*) AS counted FROM numbers GROUP BY boo using DBD::File ok 1418 - Columns in Number of rows in aggregated Table ok 1419 - Number of rows in aggregated Table ok 1420 - SUM(COUNTED) ok 1421 - prepare SELECT MIN(c_foo), MAX(c_foo), AVG(c_foo) FROM numbers using DBD::File ok 1422 - execute SELECT MIN(c_foo), MAX(c_foo), AVG(c_foo) FROM numbers using DBD::File ok 1423 - Aggregate functions MIN, MAX, AVG ok 1424 - prepare SELECT COUNT(*) FROM trick using DBD::File ok 1425 - execute SELECT COUNT(*) FROM trick using DBD::File ok 1426 - COUNT(*) internal for nasty table ok 1427 - prepare SELECT CURRENT_DATE() using DBD::File ok 1428 - execute SELECT CURRENT_DATE() using DBD::File ok 1429 - current_date int ok 1430 - prepare SELECT CURRENT_TIME using DBD::File ok 1431 - execute SELECT CURRENT_TIME using DBD::File ok 1432 - current_time int ok 1433 - prepare SELECT CURRENT_TIMESTAMP() using DBD::File ok 1434 - execute SELECT CURRENT_TIMESTAMP() using DBD::File ok 1435 - current_timestamp int ok 1436 - prepare SELECT CURDATE using DBD::File ok 1437 - execute SELECT CURDATE using DBD::File ok 1438 - curdate int ok 1439 - prepare SELECT CURTIME() using DBD::File ok 1440 - execute SELECT CURTIME() using DBD::File ok 1441 - curtime int ok 1442 - prepare SELECT NOW using DBD::File ok 1443 - execute SELECT NOW using DBD::File ok 1444 - now int ok 1445 - prepare SELECT UNIX_TIMESTAMP() using DBD::File ok 1446 - execute SELECT UNIX_TIMESTAMP() using DBD::File ok 1447 - unix_timestamp int ok 1448 - prepare SELECT CURRENT_TIME (1) using DBD::File ok 1449 - execute SELECT CURRENT_TIME (1) using DBD::File ok 1450 - current_time precision ok 1451 - prepare SELECT CURRENT_TIMESTAMP (2) using DBD::File ok 1452 - execute SELECT CURRENT_TIMESTAMP (2) using DBD::File ok 1453 - current_timestamp precision ok 1454 - prepare SELECT CURTIME (3) using DBD::File ok 1455 - execute SELECT CURTIME (3) using DBD::File ok 1456 - curtime precision ok 1457 - prepare SELECT NOW(4) using DBD::File ok 1458 - execute SELECT NOW(4) using DBD::File ok 1459 - now precision ok 1460 - prepare SELECT UNIX_TIMESTAMP(5) using DBD::File ok 1461 - execute SELECT UNIX_TIMESTAMP(5) using DBD::File ok 1462 - unix_timestamp precision ok 1463 - prepare SELECT ASCII('A') using DBD::File ok 1464 - execute SELECT ASCII('A') using DBD::File ok 1465 - ascii char ok 1466 - prepare SELECT ASCII('ABC') using DBD::File ok 1467 - execute SELECT ASCII('ABC') using DBD::File ok 1468 - ascii str ok 1469 - prepare SELECT CHAR() using DBD::File ok 1470 - execute SELECT CHAR() using DBD::File ok 1471 - char blank ok 1472 - prepare SELECT CHAR(65) using DBD::File ok 1473 - execute SELECT CHAR(65) using DBD::File ok 1474 - char char ok 1475 - prepare SELECT CHAR(CONV('263A', 16)) using DBD::File ok 1476 - execute SELECT CHAR(CONV('263A', 16)) using DBD::File ok 1477 - char char unicode ok 1478 - prepare SELECT CHAR(CONV('263A', 16), 9787, CONV('10011000111100', 2)) using DBD::File ok 1479 - execute SELECT CHAR(CONV('263A', 16), 9787, CONV('10011000111100', 2)) using DBD::File ok 1480 - char str unicode ok 1481 - prepare SELECT CHAR(65,66,67) using DBD::File ok 1482 - execute SELECT CHAR(65,66,67) using DBD::File ok 1483 - char str ok 1484 - prepare SELECT BIT_LENGTH(' oo') using DBD::File ok 1485 - execute SELECT BIT_LENGTH(' oo') using DBD::File ok 1486 - bit_length 6bit ok 1487 - prepare SELECT BIT_LENGTH('foo') using DBD::File ok 1488 - execute SELECT BIT_LENGTH('foo') using DBD::File ok 1489 - bit_length 7bit ok 1490 - prepare SELECT BIT_LENGTH(CHAR(9786, 9787, 9788)) using DBD::File ok 1491 - execute SELECT BIT_LENGTH(CHAR(9786, 9787, 9788)) using DBD::File ok 1492 - bit_length unicode ok 1493 - prepare SELECT CHARACTER_LENGTH('foo') using DBD::File ok 1494 - execute SELECT CHARACTER_LENGTH('foo') using DBD::File ok 1495 - character_length ok 1496 - prepare SELECT CHAR_LENGTH('foo') using DBD::File ok 1497 - execute SELECT CHAR_LENGTH('foo') using DBD::File ok 1498 - char_length ok 1499 - prepare SELECT CHARACTER_LENGTH(CHAR(9786, 9787, 9788)) using DBD::File ok 1500 - execute SELECT CHARACTER_LENGTH(CHAR(9786, 9787, 9788)) using DBD::File ok 1501 - character_length unicode ok 1502 - prepare SELECT CHAR_LENGTH(CHAR(9786, 9787, 9788)) using DBD::File ok 1503 - execute SELECT CHAR_LENGTH(CHAR(9786, 9787, 9788)) using DBD::File ok 1504 - char_length unicode ok 1505 - prepare SELECT COALESCE(NULL,'z') using DBD::File ok 1506 - execute SELECT COALESCE(NULL,'z') using DBD::File ok 1507 - coalesce ok 1508 - prepare SELECT NVL(NULL,'z') using DBD::File ok 1509 - execute SELECT NVL(NULL,'z') using DBD::File ok 1510 - nvl ok 1511 - prepare SELECT IFNULL(NULL,'z') using DBD::File ok 1512 - execute SELECT IFNULL(NULL,'z') using DBD::File ok 1513 - ifnull ok 1514 - prepare SELECT CONCAT('A','B') using DBD::File ok 1515 - execute SELECT CONCAT('A','B') using DBD::File ok 1516 - concat good ok 1517 - prepare SELECT CONCAT('A',NULL) using DBD::File ok 1518 - execute SELECT CONCAT('A',NULL) using DBD::File ok 1519 - concat bad ok 1520 - prepare SELECT CONV('10101001111011101101011', 2, 64) using DBD::File ok 1521 - execute SELECT CONV('10101001111011101101011', 2, 64) using DBD::File ok 1522 - conv 2->64 ok 1523 - prepare SELECT CONV('10101001111011101101011', 2, 16) using DBD::File ok 1524 - execute SELECT CONV('10101001111011101101011', 2, 16) using DBD::File ok 1525 - conv 2->16 ok 1526 - prepare SELECT CONV('10101001111011101101011', 2, 10) using DBD::File ok 1527 - execute SELECT CONV('10101001111011101101011', 2, 10) using DBD::File ok 1528 - conv 2->10 ok 1529 - prepare SELECT CONV('10101001111011101101011', 2, 8) using DBD::File ok 1530 - execute SELECT CONV('10101001111011101101011', 2, 8) using DBD::File ok 1531 - conv 2->8 ok 1532 - prepare SELECT CONV('10101001111011101101011', 2, 2) using DBD::File ok 1533 - execute SELECT CONV('10101001111011101101011', 2, 2) using DBD::File ok 1534 - conv 2->2 ok 1535 - prepare select conv('16', 10, 16) using DBD::File ok 1536 - execute select conv('16', 10, 16) using DBD::File ok 1537 - conv 10->16 integer with trailing 0 ok 1538 - prepare select conv('0', 10, 16) using DBD::File ok 1539 - execute select conv('0', 10, 16) using DBD::File ok 1540 - conv 10->16 integer 0 ok 1541 - prepare SELECT DISTINCT DECODE(color,'White','W','Red','R','B') AS cfc FROM biz ORDER BY cfc using DBD::File ok 1542 - execute SELECT DISTINCT DECODE(color,'White','W','Red','R','B') AS cfc FROM biz ORDER BY cfc using DBD::File ok 1543 - decode ok 1544 - prepare SELECT INSERT('foodieland', 4, 3, 'bar') using DBD::File ok 1545 - execute SELECT INSERT('foodieland', 4, 3, 'bar') using DBD::File ok 1546 - insert good 1:1 ok 1547 - prepare SELECT INSERT('foodland', 4, 1, 'bar') using DBD::File ok 1548 - execute SELECT INSERT('foodland', 4, 1, 'bar') using DBD::File ok 1549 - insert good non-1:1 ok 1550 - prepare SELECT INSERT(NULL, 4, 1, 'bar') using DBD::File ok 1551 - execute SELECT INSERT(NULL, 4, 1, 'bar') using DBD::File ok 1552 - insert bad 1 ok 1553 - prepare SELECT INSERT('foodland', 4, 1, NULL) using DBD::File ok 1554 - execute SELECT INSERT('foodland', 4, 1, NULL) using DBD::File ok 1555 - insert bad 2 ok 1556 - prepare SELECT LEFT('foodland', 4) using DBD::File ok 1557 - execute SELECT LEFT('foodland', 4) using DBD::File ok 1558 - left good ok 1559 - prepare SELECT LEFT(NULL, 4) using DBD::File ok 1560 - execute SELECT LEFT(NULL, 4) using DBD::File ok 1561 - left bad 1 ok 1562 - prepare SELECT LEFT('foodland', NULL) using DBD::File ok 1563 - execute SELECT LEFT('foodland', NULL) using DBD::File ok 1564 - left bad 2 ok 1565 - prepare SELECT RIGHT('foodland', 4) using DBD::File ok 1566 - execute SELECT RIGHT('foodland', 4) using DBD::File ok 1567 - right good ok 1568 - prepare SELECT RIGHT(NULL, 4) using DBD::File ok 1569 - execute SELECT RIGHT(NULL, 4) using DBD::File ok 1570 - right bad 1 ok 1571 - prepare SELECT RIGHT('foodland', NULL) using DBD::File ok 1572 - execute SELECT RIGHT('foodland', NULL) using DBD::File ok 1573 - right bad 2 ok 1574 - prepare SELECT LOCATE('a','bar') using DBD::File ok 1575 - execute SELECT LOCATE('a','bar') using DBD::File ok 1576 - locate 2param ok 1577 - prepare SELECT LOCATE('a','barafa',3) using DBD::File ok 1578 - execute SELECT LOCATE('a','barafa',3) using DBD::File ok 1579 - locate 3param ok 1580 - prepare SELECT POSITION('a','bar') using DBD::File ok 1581 - execute SELECT POSITION('a','bar') using DBD::File ok 1582 - position 2param ok 1583 - prepare SELECT POSITION('a','barafa',3) using DBD::File ok 1584 - execute SELECT POSITION('a','barafa',3) using DBD::File ok 1585 - position 3param ok 1586 - prepare SELECT LOWER('A') using DBD::File ok 1587 - execute SELECT LOWER('A') using DBD::File ok 1588 - lower ok 1589 - prepare SELECT UPPER('a') using DBD::File ok 1590 - execute SELECT UPPER('a') using DBD::File ok 1591 - upper ok 1592 - prepare SELECT LCASE('A') using DBD::File ok 1593 - execute SELECT LCASE('A') using DBD::File ok 1594 - lcase ok 1595 - prepare SELECT UCASE('a') using DBD::File ok 1596 - execute SELECT UCASE('a') using DBD::File ok 1597 - ucase ok 1598 - prepare SELECT LTRIM(' fun ') using DBD::File ok 1599 - execute SELECT LTRIM(' fun ') using DBD::File ok 1600 - ltrim ok 1601 - prepare SELECT RTRIM(' fun ') using DBD::File ok 1602 - execute SELECT RTRIM(' fun ') using DBD::File ok 1603 - rtrim ok 1604 - prepare SELECT OCTET_LENGTH('foo') using DBD::File ok 1605 - execute SELECT OCTET_LENGTH('foo') using DBD::File ok 1606 - octet_length ok 1607 - prepare SELECT OCTET_LENGTH(CHAR(64, 169, 9786, 65572)) using DBD::File ok 1608 - execute SELECT OCTET_LENGTH(CHAR(64, 169, 9786, 65572)) using DBD::File ok 1609 - octet_length unicode ok 1610 - prepare SELECT REGEX('jeff','/EF/i') using DBD::File ok 1611 - execute SELECT REGEX('jeff','/EF/i') using DBD::File ok 1612 - regex match ok 1613 - prepare SELECT REGEX('jeff','/zzz/') using DBD::File ok 1614 - execute SELECT REGEX('jeff','/zzz/') using DBD::File ok 1615 - regex no match ok 1616 - prepare SELECT REPEAT('zfunkY', 3) using DBD::File ok 1617 - execute SELECT REPEAT('zfunkY', 3) using DBD::File ok 1618 - repeat ok 1619 - prepare SELECT REPLACE('zfunkY','s/z(.+)ky/$1/i') using DBD::File ok 1620 - execute SELECT REPLACE('zfunkY','s/z(.+)ky/$1/i') using DBD::File ok 1621 - replace ok 1622 - prepare SELECT SUBSTITUTE('zfunkY','s/z(.+)ky/$1/i') using DBD::File ok 1623 - execute SELECT SUBSTITUTE('zfunkY','s/z(.+)ky/$1/i') using DBD::File ok 1624 - substitute ok 1625 - prepare SELECT SOUNDEX('jeff','jeph') using DBD::File ok 1626 - execute SELECT SOUNDEX('jeff','jeph') using DBD::File ok 1627 - soundex match ok 1628 - prepare SELECT SOUNDEX('jeff','quartz') using DBD::File ok 1629 - execute SELECT SOUNDEX('jeff','quartz') using DBD::File ok 1630 - soundex no match ok 1631 - prepare SELECT SPACE(10) using DBD::File ok 1632 - execute SELECT SPACE(10) using DBD::File ok 1633 - space ok 1634 - prepare SELECT SUBSTR('zfunkY',2,3) using DBD::File ok 1635 - execute SELECT SUBSTR('zfunkY',2,3) using DBD::File ok 1636 - substr ok 1637 - prepare SELECT DISTINCT color FROM biz WHERE SUBSTRING(class FROM 1 FOR 1)='T' using DBD::File ok 1638 - execute SELECT DISTINCT color FROM biz WHERE SUBSTRING(class FROM 1 FOR 1)='T' using DBD::File ok 1639 - substring ok 1640 - prepare SELECT TRANSLATE('foobar forever', 'oae', '0@3') using DBD::File ok 1641 - execute SELECT TRANSLATE('foobar forever', 'oae', '0@3') using DBD::File ok 1642 - translate ok 1643 - prepare SELECT TRIM(' fun ') using DBD::File ok 1644 - execute SELECT TRIM(' fun ') using DBD::File ok 1645 - trim simple not ok 1646 - prepare SELECT TRIM(LEADING FROM ' fun ') using DBD::File # TODO Analyze why this fails; may be thinking FROM keyword is for table specs # Failed (TODO) test 'prepare SELECT TRIM(LEADING FROM ' fun ') using DBD::File' # at t/06virtual.t line 1419. # Unbalanced parentheses! not ok 1647 - prepare SELECT TRIM(TRAILING FROM ' fun ') using DBD::File # TODO Analyze why this fails; may be thinking FROM keyword is for table specs # Failed (TODO) test 'prepare SELECT TRIM(TRAILING FROM ' fun ') using DBD::File' # at t/06virtual.t line 1419. # Unbalanced parentheses! not ok 1648 - prepare SELECT TRIM(LEADING ';' FROM ';;; fun ') using DBD::File # TODO Analyze why this fails; may be thinking FROM keyword is for table specs # Failed (TODO) test 'prepare SELECT TRIM(LEADING ';' FROM ';;; fun ') using DBD::File' # at t/06virtual.t line 1419. # Unbalanced parentheses! ok 1649 - prepare SELECT UNHEX('414243') using DBD::File ok 1650 - execute SELECT UNHEX('414243') using DBD::File ok 1651 - unhex str ok 1652 - prepare SELECT UNHEX('263A' || HEX(9787) || CONV('10011000111100', 2, 16), 'UCS-2') using DBD::File ok 1653 - execute SELECT UNHEX('263A' || HEX(9787) || CONV('10011000111100', 2, 16), 'UCS-2') using DBD::File ok 1654 - unhex str unicode ok 1655 - prepare SELECT BIN('9788') using DBD::File ok 1656 - execute SELECT BIN('9788') using DBD::File ok 1657 - bin from dec ok 1658 - prepare SELECT OCT('420') using DBD::File ok 1659 - execute SELECT OCT('420') using DBD::File ok 1660 - oct from dec ok 1661 - prepare SELECT ABS(-4) using DBD::File ok 1662 - execute SELECT ABS(-4) using DBD::File ok 1663 - abs ok 1664 - prepare SELECT CEILING(5) using DBD::File ok 1665 - execute SELECT CEILING(5) using DBD::File ok 1666 - ceiling int ok 1667 - prepare SELECT CEILING(4.1) using DBD::File ok 1668 - execute SELECT CEILING(4.1) using DBD::File ok 1669 - ceiling positive ok 1670 - prepare SELECT CEIL(-4.5) using DBD::File ok 1671 - execute SELECT CEIL(-4.5) using DBD::File ok 1672 - ceil negative ok 1673 - prepare SELECT FLOOR(-5) using DBD::File ok 1674 - execute SELECT FLOOR(-5) using DBD::File ok 1675 - floor int ok 1676 - prepare SELECT FLOOR(4.999999999999) using DBD::File ok 1677 - execute SELECT FLOOR(4.999999999999) using DBD::File ok 1678 - floor positive ok 1679 - prepare SELECT FLOOR(-4.1) using DBD::File ok 1680 - execute SELECT FLOOR(-4.1) using DBD::File ok 1681 - floor negative ok 1682 - prepare SELECT EXP(1) using DBD::File ok 1683 - execute SELECT EXP(1) using DBD::File ok 1684 - exp ok 1685 - prepare SELECT LOG(6) using DBD::File ok 1686 - execute SELECT LOG(6) using DBD::File ok 1687 - log as log10 ok 1688 - prepare SELECT LOG(2, 32) using DBD::File ok 1689 - execute SELECT LOG(2, 32) using DBD::File ok 1690 - log as log2 ok 1691 - prepare SELECT LN(3) using DBD::File ok 1692 - execute SELECT LN(3) using DBD::File ok 1693 - ln ok 1694 - prepare SELECT MOD(8, 5) using DBD::File ok 1695 - execute SELECT MOD(8, 5) using DBD::File ok 1696 - mod ok 1697 - prepare SELECT POWER(2, 4) using DBD::File ok 1698 - execute SELECT POWER(2, 4) using DBD::File ok 1699 - power ok 1700 - prepare SELECT POW(2, 4) using DBD::File ok 1701 - execute SELECT POW(2, 4) using DBD::File ok 1702 - pow ok 1703 - prepare SELECT FLOOR(RAND(4)) using DBD::File ok 1704 - execute SELECT FLOOR(RAND(4)) using DBD::File ok 1705 - rand ok 1706 - prepare SELECT FLOOR(RAND(4), UNIX_TIMESTAMP()) using DBD::File ok 1707 - execute SELECT FLOOR(RAND(4), UNIX_TIMESTAMP()) using DBD::File ok 1708 - rand with seed ok 1709 - prepare SELECT ROUND(4.999999999999) using DBD::File ok 1710 - execute SELECT ROUND(4.999999999999) using DBD::File ok 1711 - round int ok 1712 - prepare SELECT ROUND(4.542222222222, 1) using DBD::File ok 1713 - execute SELECT ROUND(4.542222222222, 1) using DBD::File ok 1714 - round tenth ok 1715 - prepare SELECT SIGN(-25.5) using DBD::File ok 1716 - execute SELECT SIGN(-25.5) using DBD::File ok 1717 - sign -1 ok 1718 - prepare SELECT SIGN(53645) using DBD::File ok 1719 - execute SELECT SIGN(53645) using DBD::File ok 1720 - sign 1 ok 1721 - prepare SELECT SIGN(0) using DBD::File ok 1722 - execute SELECT SIGN(0) using DBD::File ok 1723 - sign 0 ok 1724 - prepare SELECT SIGN(NULL) using DBD::File ok 1725 - execute SELECT SIGN(NULL) using DBD::File ok 1726 - sign null ok 1727 - prepare SELECT SQRT(64) using DBD::File ok 1728 - execute SELECT SQRT(64) using DBD::File ok 1729 - sqrt ok 1730 - prepare SELECT TRUNCATE(4.999999999999) using DBD::File ok 1731 - execute SELECT TRUNCATE(4.999999999999) using DBD::File ok 1732 - truncate int ok 1733 - prepare SELECT TRUNC(-4.9) using DBD::File ok 1734 - execute SELECT TRUNC(-4.9) using DBD::File ok 1735 - trunc int ok 1736 - prepare SELECT TRUNCATE(4.934, 1) using DBD::File ok 1737 - execute SELECT TRUNCATE(4.934, 1) using DBD::File ok 1738 - truncate tenth ok 1739 - prepare SELECT TRUNC(-4.99999, 1) using DBD::File ok 1740 - execute SELECT TRUNC(-4.99999, 1) using DBD::File ok 1741 - trunc int ok 1742 - prepare SELECT SIN(1) using DBD::File ok 1743 - execute SELECT SIN(1) using DBD::File ok 1744 - sin(1) => near? 0.841470984807897 ~= 0.841470984807897 ok 1745 - prepare SELECT COS(1) using DBD::File ok 1746 - execute SELECT COS(1) using DBD::File ok 1747 - cos(1) => near? 0.54030230586814 ~= 0.54030230586814 ok 1748 - prepare SELECT TAN(1) using DBD::File ok 1749 - execute SELECT TAN(1) using DBD::File ok 1750 - tan(1) => near? 1.5574077246549 ~= 1.5574077246549 ok 1751 - prepare SELECT SEC(1) using DBD::File ok 1752 - execute SELECT SEC(1) using DBD::File ok 1753 - sec(1) => near? 1.85081571768093 ~= 1.85081571768093 ok 1754 - prepare SELECT CSC(1) using DBD::File ok 1755 - execute SELECT CSC(1) using DBD::File ok 1756 - csc(1) => near? 1.18839510577812 ~= 1.18839510577812 ok 1757 - prepare SELECT COSEC(1) using DBD::File ok 1758 - execute SELECT COSEC(1) using DBD::File ok 1759 - cosec(1) => near? 1.18839510577812 ~= 1.18839510577812 ok 1760 - prepare SELECT COT(1) using DBD::File ok 1761 - execute SELECT COT(1) using DBD::File ok 1762 - cot(1) => near? 0.642092615934331 ~= 0.642092615934331 ok 1763 - prepare SELECT COTAN(1) using DBD::File ok 1764 - execute SELECT COTAN(1) using DBD::File ok 1765 - cotan(1) => near? 0.642092615934331 ~= 0.642092615934331 ok 1766 - prepare SELECT ASIN(1) using DBD::File ok 1767 - execute SELECT ASIN(1) using DBD::File ok 1768 - asin(1) => near? 1.5707963267949 ~= 1.5707963267949 ok 1769 - prepare SELECT ACOS(1) using DBD::File ok 1770 - execute SELECT ACOS(1) using DBD::File ok 1771 - acos(1) => near? 0 ~= 0 ok 1772 - prepare SELECT ATAN(1) using DBD::File ok 1773 - execute SELECT ATAN(1) using DBD::File ok 1774 - atan(1) => near? 0.785398163397448 ~= 0.785398163397448 ok 1775 - prepare SELECT ASEC(1) using DBD::File ok 1776 - execute SELECT ASEC(1) using DBD::File ok 1777 - asec(1) => near? 0 ~= 0 ok 1778 - prepare SELECT ACSC(1) using DBD::File ok 1779 - execute SELECT ACSC(1) using DBD::File ok 1780 - acsc(1) => near? 1.5707963267949 ~= 1.5707963267949 ok 1781 - prepare SELECT ACOSEC(1) using DBD::File ok 1782 - execute SELECT ACOSEC(1) using DBD::File ok 1783 - acosec(1) => near? 1.5707963267949 ~= 1.5707963267949 ok 1784 - prepare SELECT ACOT(1) using DBD::File ok 1785 - execute SELECT ACOT(1) using DBD::File ok 1786 - acot(1) => near? 0.785398163397448 ~= 0.785398163397448 ok 1787 - prepare SELECT ACOTAN(1) using DBD::File ok 1788 - execute SELECT ACOTAN(1) using DBD::File ok 1789 - acotan(1) => near? 0.785398163397448 ~= 0.785398163397448 ok 1790 - prepare SELECT SINH(1) using DBD::File ok 1791 - execute SELECT SINH(1) using DBD::File ok 1792 - sinh(1) => near? 1.1752011936438 ~= 1.1752011936438 ok 1793 - prepare SELECT COSH(1) using DBD::File ok 1794 - execute SELECT COSH(1) using DBD::File ok 1795 - cosh(1) => near? 1.54308063481524 ~= 1.54308063481524 ok 1796 - prepare SELECT TANH(1) using DBD::File ok 1797 - execute SELECT TANH(1) using DBD::File ok 1798 - tanh(1) => near? 0.761594155955765 ~= 0.761594155955765 ok 1799 - prepare SELECT SECH(1) using DBD::File ok 1800 - execute SELECT SECH(1) using DBD::File ok 1801 - sech(1) => near? 0.648054273663885 ~= 0.648054273663885 ok 1802 - prepare SELECT CSCH(1) using DBD::File ok 1803 - execute SELECT CSCH(1) using DBD::File ok 1804 - csch(1) => near? 0.850918128239322 ~= 0.850918128239322 ok 1805 - prepare SELECT COSECH(1) using DBD::File ok 1806 - execute SELECT COSECH(1) using DBD::File ok 1807 - cosech(1) => near? 0.850918128239322 ~= 0.850918128239322 ok 1808 - prepare SELECT COTH(1) using DBD::File ok 1809 - execute SELECT COTH(1) using DBD::File ok 1810 - coth(1) => near? 1.31303528549933 ~= 1.31303528549933 ok 1811 - prepare SELECT COTANH(1) using DBD::File ok 1812 - execute SELECT COTANH(1) using DBD::File ok 1813 - cotanh(1) => near? 1.31303528549933 ~= 1.31303528549933 ok 1814 - prepare SELECT ASINH(1) using DBD::File ok 1815 - execute SELECT ASINH(1) using DBD::File ok 1816 - asinh(1) => near? 0.881373587019543 ~= 0.881373587019543 ok 1817 - prepare SELECT ACOSH(1) using DBD::File ok 1818 - execute SELECT ACOSH(1) using DBD::File ok 1819 - acosh(1) => near? 0 ~= 0 ok 1820 - prepare SELECT ATANH(0.9) using DBD::File ok 1821 - execute SELECT ATANH(0.9) using DBD::File ok 1822 - atanh(0.9) => near? 1.47221948958322 ~= 1.47221948958322 ok 1823 - prepare SELECT ASECH(0.9) using DBD::File ok 1824 - execute SELECT ASECH(0.9) using DBD::File ok 1825 - asech(0.9) => near? 0.467145308103262 ~= 0.467145308103262 ok 1826 - prepare SELECT ACSCH(2) using DBD::File ok 1827 - execute SELECT ACSCH(2) using DBD::File ok 1828 - acsch(2) => near? 0.481211825059603 ~= 0.481211825059603 ok 1829 - prepare SELECT ACOSECH(2) using DBD::File ok 1830 - execute SELECT ACOSECH(2) using DBD::File ok 1831 - acosech(2) => near? 0.481211825059603 ~= 0.481211825059603 ok 1832 - prepare SELECT ACOTH(2) using DBD::File ok 1833 - execute SELECT ACOTH(2) using DBD::File ok 1834 - acoth(2) => near? 0.549306144334055 ~= 0.549306144334055 ok 1835 - prepare SELECT ACOTANH(2) using DBD::File ok 1836 - execute SELECT ACOTANH(2) using DBD::File ok 1837 - acotanh(2) => near? 0.549306144334055 ~= 0.549306144334055 ok 1838 - prepare SELECT PI using DBD::File ok 1839 - execute SELECT PI using DBD::File ok 1840 - pi => near? 3.14159265358979 ~= 3.14159265358979 ok 1841 - prepare SELECT ATAN2(1, 0) using DBD::File ok 1842 - execute SELECT ATAN2(1, 0) using DBD::File ok 1843 - atan2(1, 0) => near? 1.5707963267949 ~= 1.5707963267949 ok 1844 - prepare SELECT ATAN2(1, 1) using DBD::File ok 1845 - execute SELECT ATAN2(1, 1) using DBD::File ok 1846 - atan2(1, 1) => near? 0.785398163397448 ~= 0.785398163397448 ok 1847 - prepare SELECT ATAN2(-1, -1) using DBD::File ok 1848 - execute SELECT ATAN2(-1, -1) using DBD::File ok 1849 - atan2(-1, -1) to -3pi/4 => near? -2.35619449019234 ~= -2.35619449019234 ok 1850 - prepare SELECT TAN(0.9) using DBD::File ok 1851 - execute SELECT TAN(0.9) using DBD::File ok 1852 - tan(0.9) as property sin/cos => near? 1.26015821755034 ~= 1.26015821755034 ok 1853 - prepare SELECT SINH(2) using DBD::File ok 1854 - execute SELECT SINH(2) using DBD::File ok 1855 - sinh(2) => near? 3.62686040784702 ~= 3.62686040784702 ok 1856 - prepare SELECT ACSCH(0.1) using DBD::File ok 1857 - execute SELECT ACSCH(0.1) using DBD::File ok 1858 - acsch 0.1 => near? 2.99822295029797 ~= 2.99822295029797 ok 1859 - prepare SELECT DEG2RAD(90) using DBD::File ok 1860 - execute SELECT DEG2RAD(90) using DBD::File ok 1861 - deg2rad(90) => near? 1.5707963267949 ~= 1.5707963267949 ok 1862 - prepare SELECT RADIANS(90) using DBD::File ok 1863 - execute SELECT RADIANS(90) using DBD::File ok 1864 - radians(90) => near? 1.5707963267949 ~= 1.5707963267949 ok 1865 - prepare SELECT RAD2DEG(PI) using DBD::File ok 1866 - execute SELECT RAD2DEG(PI) using DBD::File ok 1867 - rad2deg(PI) => near? 180 ~= 180 ok 1868 - prepare SELECT DEGREES(PI()) using DBD::File ok 1869 - execute SELECT DEGREES(PI()) using DBD::File ok 1870 - degrees(PI) => near? 180 ~= 180 ok 1871 - prepare SELECT DEG2GRAD(0.9) using DBD::File ok 1872 - execute SELECT DEG2GRAD(0.9) using DBD::File ok 1873 - deg2grad(0.9) => near? 1 ~= 1 ok 1874 - prepare SELECT GRAD2DEG(50) using DBD::File ok 1875 - execute SELECT GRAD2DEG(50) using DBD::File ok 1876 - grad2deg(50) => near? 45 ~= 45 ok 1877 - prepare SELECT RAD2GRAD(PI/2) using DBD::File # TODO Known limitation. Parser/Engine can not handle properly ok 1878 - execute SELECT RAD2GRAD(PI/2) using DBD::File # TODO Known limitation. Parser/Engine can not handle properly ok 1879 - rad2grad(pi/2) => near? 99.9999999999999 ~= 100 # TODO Known limitation. Parser/Engine can not handle properly ok 1880 - prepare SELECT RAD2GRAD(PI) using DBD::File ok 1881 - execute SELECT RAD2GRAD(PI) using DBD::File ok 1882 - rad2grad(pi) => near? 200 ~= 200 ok 1883 - prepare SELECT GRAD2RAD(200) using DBD::File ok 1884 - execute SELECT GRAD2RAD(200) using DBD::File ok 1885 - grad2rad(200) => near? 3.14159265358979 ~= 3.14159265358979 ok 1886 - prepare SELECT DEG2RAD(10000000000) using DBD::File ok 1887 - execute SELECT DEG2RAD(10000000000) using DBD::File ok 1888 - lotta radians - deg2rad(10000000000) => near? 4.88692191243172 ~= 4.88692191243172 ok 1889 - prepare SELECT RAD2DEG(-10000000000) using DBD::File ok 1890 - execute SELECT RAD2DEG(-10000000000) using DBD::File ok 1891 - negative degrees - rad2deg(-10000000000) => near? -330.8232421875 ~= -330.8232421875 ok 1892 - prepare SELECT RAD2DEG(10000) using DBD::File ok 1893 - execute SELECT RAD2DEG(10000) using DBD::File ok 1894 - positive degrees - rad2deg(10000) => near? 197.795130823273 ~= 197.795130823273 ok 1895 - prepare SELECT TANH(100) using DBD::File ok 1896 - execute SELECT TANH(100) using DBD::File ok 1897 - tanh 100 => near? 1 ~= 1 ok 1898 - prepare SELECT COTH(100) using DBD::File ok 1899 - execute SELECT COTH(100) using DBD::File ok 1900 - coth 100 => near? 1 ~= 1 ok 1901 - prepare SELECT TANH(-100) using DBD::File ok 1902 - execute SELECT TANH(-100) using DBD::File ok 1903 - tanh -100 => near? -1 ~= -1 ok 1904 - prepare SELECT COTH(-100) using DBD::File ok 1905 - execute SELECT COTH(-100) using DBD::File ok 1906 - coth -100 => near? -1 ~= -1 ok 1907 - prepare SELECT SECH(100000) using DBD::File ok 1908 - execute SELECT SECH(100000) using DBD::File ok 1909 - sech 1e5 => near? 0 ~= 0 ok 1910 - prepare SELECT CSCH(100000) using DBD::File ok 1911 - execute SELECT CSCH(100000) using DBD::File ok 1912 - csch 1e5 => near? 0 ~= 0 ok 1913 - prepare SELECT TANH(100000) using DBD::File ok 1914 - execute SELECT TANH(100000) using DBD::File ok 1915 - tanh 1e5 => near? 1 ~= 1 ok 1916 - prepare SELECT COTH(100000) using DBD::File ok 1917 - execute SELECT COTH(100000) using DBD::File ok 1918 - coth 1e5 => near? 1 ~= 1 ok 1919 - prepare SELECT SECH(-100000) using DBD::File ok 1920 - execute SELECT SECH(-100000) using DBD::File ok 1921 - sech -1e5 => near? 0 ~= 0 ok 1922 - prepare SELECT CSCH(-100000) using DBD::File ok 1923 - execute SELECT CSCH(-100000) using DBD::File ok 1924 - csch -1e5 => near? 0 ~= 0 ok 1925 - prepare SELECT TANH(-100000) using DBD::File ok 1926 - execute SELECT TANH(-100000) using DBD::File ok 1927 - tanh -1e5 => near? -1 ~= -1 ok 1928 - prepare SELECT COTH(-100000) using DBD::File ok 1929 - execute SELECT COTH(-100000) using DBD::File ok 1930 - coth -1e5 => near? -1 ~= -1 ok 1931 - prepare SELECT DBNAME() using DBD::File ok 1932 - execute SELECT DBNAME() using DBD::File ok 1933 - dbname ok 1934 - prepare SELECT USERNAME() using DBD::File ok 1935 - execute SELECT USERNAME() using DBD::File ok 1936 - username ok 1937 - prepare SELECT USER() using DBD::File ok 1938 - execute SELECT USER() using DBD::File ok 1939 - user ok 1940 - prepare SELECT id,host,signature,message FROM log WHERE time_stamp < (1460110716 - ( 4 * 60 )) using DBD::File ok 1941 - execute SELECT id,host,signature,message FROM log WHERE time_stamp < (1460110716 - ( 4 * 60 )) using DBD::File ok 1942 - SELECT with calculation in WHERE CLAUSE ok 1943 - prepare SELECT id,host,signature,message FROM log WHERE (time_stamp > (1460110716 - 5)) AND (time_stamp < (1460110716 + 5)) using DBD::File ok 1944 - execute SELECT id,host,signature,message FROM log WHERE (time_stamp > (1460110716 - 5)) AND (time_stamp < (1460110716 + 5)) using DBD::File ok 1945 - SELECT with calculation and logical expression in WHERE CLAUSE ok 1946 - prepare SELECT id,host,signature,message FROM log WHERE time_stamp BETWEEN ( 1460110716 - 5, 1460110716 + 5) using DBD::File ok 1947 - execute SELECT id,host,signature,message FROM log WHERE time_stamp BETWEEN ( 1460110716 - 5, 1460110716 + 5) using DBD::File ok 1948 - SELECT with calculated items in BETWEEN in WHERE CLAUSE ok 1949 - prepare SELECT MAX(time_stamp) FROM log WHERE time_stamp IN (1460110716 - (2*3600), 1460110716 - (4*3600)) using DBD::File ok 1950 - execute SELECT MAX(time_stamp) FROM log WHERE time_stamp IN (1460110716 - (2*3600), 1460110716 - (4*3600)) using DBD::File ok 1951 - MAX() with calculated WHERE clause ok 1952 - prepare SELECT MAX(time_stamp - 3*3600) FROM log using DBD::File ok 1953 - execute SELECT MAX(time_stamp - 3*3600) FROM log using DBD::File ok 1954 - calculation in MAX() ok 1955 - prepare SELECT MAX(time_stamp) - 3*3600 FROM log using DBD::File not ok 1956 - execute SELECT MAX(time_stamp) - 3*3600 FROM log using DBD::File # TODO Known limitation. Parser/Engine can not handle properly # Failed (TODO) test 'execute SELECT MAX(time_stamp) - 3*3600 FROM log using DBD::File' # at t/06virtual.t line 1468. # Can't find table containing column named 'max' at /Users/fly1600/cpanfly-5.16/var/cpan/build/SQL-Statement-1.409-HsNhn9/blib/lib/SQL/Statement/Function.pm line 222. not ok 1957 - Caclulation outside aggregation # TODO Known limitation. Parser/Engine can not handle properly # Failed (TODO) test 'Caclulation outside aggregation' # at t/06virtual.t line 1499. # Structures begin differing at: # $got->[0] = Does not exist # $expected->[0] = ARRAY(0x100f3f4c8) ok 1958 - prepare SELECT MAX( CHAR_LENGTH(message) ) FROM log using DBD::File ok 1959 - execute SELECT MAX( CHAR_LENGTH(message) ) FROM log using DBD::File ok 1960 - function in MAX() ok 1961 - prepare SELECT 1+0 from log using DBD::File ok 1962 - execute SELECT 1+0 from log using DBD::File ok 1963 - select simple calculated constant from table ok 1964 - prepare SELECT 1+1*2 using DBD::File ok 1965 - execute SELECT 1+1*2 using DBD::File ok 1966 - select calculated constant with preceedence rules ok 1967 - prepare SELECT 1 using DBD::File ok 1968 - execute SELECT 1 using DBD::File ok 1969 - SELECT not calculated constant # Running tests for DBD::DBM ok 1970 - prepare CREATE TABLE biz (sales INTEGER, class CHAR, color CHAR, BUGNULL CHAR) on DBD::DBM ok 1971 - execute CREATE TABLE biz (sales INTEGER, class CHAR, color CHAR, BUGNULL CHAR) on DBD::DBM ok 1972 - prepare INSERT INTO biz VALUES (1000, 'Car', 'White', NULL) on DBD::DBM ok 1973 - execute INSERT INTO biz VALUES (1000, 'Car', 'White', NULL) on DBD::DBM ok 1974 - prepare INSERT INTO biz VALUES ( 500, 'Car', 'Blue', NULL ) on DBD::DBM ok 1975 - execute INSERT INTO biz VALUES ( 500, 'Car', 'Blue', NULL ) on DBD::DBM ok 1976 - prepare INSERT INTO biz VALUES ( 400, 'Truck', 'White', NULL ) on DBD::DBM ok 1977 - execute INSERT INTO biz VALUES ( 400, 'Truck', 'White', NULL ) on DBD::DBM ok 1978 - prepare INSERT INTO biz VALUES ( 700, 'Car', 'Red', NULL ) on DBD::DBM ok 1979 - execute INSERT INTO biz VALUES ( 700, 'Car', 'Red', NULL ) on DBD::DBM ok 1980 - prepare INSERT INTO biz VALUES ( 300, 'Truck', 'White', NULL ) on DBD::DBM ok 1981 - execute INSERT INTO biz VALUES ( 300, 'Truck', 'White', NULL ) on DBD::DBM ok 1982 - prepare CREATE TABLE baz (ordered INTEGER, class CHAR, color CHAR) on DBD::DBM ok 1983 - execute CREATE TABLE baz (ordered INTEGER, class CHAR, color CHAR) on DBD::DBM ok 1984 - prepare INSERT INTO baz VALUES ( 250, 'Car', 'White' ), ( 100, 'Car', 'Blue' ), ( 150, 'Car', 'Red' ) on DBD::DBM ok 1985 - execute INSERT INTO baz VALUES ( 250, 'Car', 'White' ), ( 100, 'Car', 'Blue' ), ( 150, 'Car', 'Red' ) on DBD::DBM ok 1986 - prepare INSERT INTO baz VALUES ( 80, 'Truck', 'White' ), ( 60, 'Truck', 'Green' ) -- Yes, we introduce new cars :) on DBD::DBM ok 1987 - execute INSERT INTO baz VALUES ( 80, 'Truck', 'White' ), ( 60, 'Truck', 'Green' ) -- Yes, we introduce new cars :) on DBD::DBM ok 1988 - prepare INSERT INTO baz VALUES ( 666, 'Truck', 'Yellow -- no, blue' ) -- Double dash inside quotes does not introduce comment on DBD::DBM ok 1989 - execute INSERT INTO baz VALUES ( 666, 'Truck', 'Yellow -- no, blue' ) -- Double dash inside quotes does not introduce comment on DBD::DBM ok 1990 - prepare CREATE TABLE numbers (c_foo INTEGER, foo CHAR, bar INTEGER) on DBD::DBM ok 1991 - execute CREATE TABLE numbers (c_foo INTEGER, foo CHAR, bar INTEGER) on DBD::DBM ok 1992 - prepare CREATE TABLE trick (id INTEGER, foo CHAR) on DBD::DBM ok 1993 - execute CREATE TABLE trick (id INTEGER, foo CHAR) on DBD::DBM ok 1994 - prepare INSERT INTO trick VALUES (1, '1foo') on DBD::DBM ok 1995 - execute INSERT INTO trick VALUES (1, '1foo') on DBD::DBM ok 1996 - prepare INSERT INTO trick VALUES (11, 'foo') on DBD::DBM ok 1997 - execute INSERT INTO trick VALUES (11, 'foo') on DBD::DBM ok 1998 - prepare CREATE TYPE TIMESTAMP on DBD::DBM ok 1999 - execute CREATE TYPE TIMESTAMP on DBD::DBM ok 2000 - prepare CREATE TABLE log (id INT, host CHAR, signature CHAR, message CHAR, time_stamp TIMESTAMP) on DBD::DBM ok 2001 - execute CREATE TABLE log (id INT, host CHAR, signature CHAR, message CHAR, time_stamp TIMESTAMP) on DBD::DBM ok 2002 - prepare INSERT INTO log VALUES (1, 'bert', '/netbsd', 'Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,', 1460110718) on DBD::DBM ok 2003 - execute INSERT INTO log VALUES (1, 'bert', '/netbsd', 'Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,', 1460110718) on DBD::DBM ok 2004 - prepare INSERT INTO log VALUES (2, 'bert', '/netbsd', '2006, 2007, 2008, 2009, 2010', 1460110718) on DBD::DBM ok 2005 - execute INSERT INTO log VALUES (2, 'bert', '/netbsd', '2006, 2007, 2008, 2009, 2010', 1460110718) on DBD::DBM ok 2006 - prepare INSERT INTO log VALUES (3, 'bert', '/netbsd', 'The NetBSD Foundation, Inc. All rights reserved.', 1460110718) on DBD::DBM ok 2007 - execute INSERT INTO log VALUES (3, 'bert', '/netbsd', 'The NetBSD Foundation, Inc. All rights reserved.', 1460110718) on DBD::DBM ok 2008 - prepare INSERT INTO log VALUES (4, 'bert', '/netbsd', 'Copyright (c) 1982, 1986, 1989, 1991, 1993', 1460110718) on DBD::DBM ok 2009 - execute INSERT INTO log VALUES (4, 'bert', '/netbsd', 'Copyright (c) 1982, 1986, 1989, 1991, 1993', 1460110718) on DBD::DBM ok 2010 - prepare INSERT INTO log VALUES (5, 'bert', '/netbsd', 'The Regents of the University of California. All rights reserved.', 1460110718) on DBD::DBM ok 2011 - execute INSERT INTO log VALUES (5, 'bert', '/netbsd', 'The Regents of the University of California. All rights reserved.', 1460110718) on DBD::DBM ok 2012 - prepare INSERT INTO log VALUES (6, 'bert', '/netbsd', '', 1460110718) on DBD::DBM ok 2013 - execute INSERT INTO log VALUES (6, 'bert', '/netbsd', '', 1460110718) on DBD::DBM ok 2014 - prepare INSERT INTO log VALUES (7, 'bert', '/netbsd', 'NetBSD 5.99.39 (BERT) \#0: Fri Oct 8 06:23:03 CEST 2010', 1460110718) on DBD::DBM ok 2015 - execute INSERT INTO log VALUES (7, 'bert', '/netbsd', 'NetBSD 5.99.39 (BERT) \#0: Fri Oct 8 06:23:03 CEST 2010', 1460110718) on DBD::DBM ok 2016 - prepare INSERT INTO log VALUES (8, 'ernie', 'rpc.statd', 'starting', 1460107118) on DBD::DBM ok 2017 - execute INSERT INTO log VALUES (8, 'ernie', 'rpc.statd', 'starting', 1460107118) on DBD::DBM ok 2018 - prepare INSERT INTO log VALUES (9, 'ernie', 'savecore', 'no core dump', 1460103518) on DBD::DBM ok 2019 - execute INSERT INTO log VALUES (9, 'ernie', 'savecore', 'no core dump', 1460103518) on DBD::DBM ok 2020 - prepare INSERT INTO log VALUES (10, 'ernie', 'postfix/postfix-script', 'starting the Postfix mail system', 1460099918) on DBD::DBM ok 2021 - execute INSERT INTO log VALUES (10, 'ernie', 'postfix/postfix-script', 'starting the Postfix mail system', 1460099918) on DBD::DBM ok 2022 - prepare INSERT INTO log VALUES (11, 'ernie', 'rpcbind', 'connect from 127.0.0.1 to dump()', 1460096318) on DBD::DBM ok 2023 - execute INSERT INTO log VALUES (11, 'ernie', 'rpcbind', 'connect from 127.0.0.1 to dump()', 1460096318) on DBD::DBM ok 2024 - prepare INSERT INTO log VALUES (12, 'ernie', 'sshd', 'last message repeated 2 times', 1460092718) on DBD::DBM ok 2025 - execute INSERT INTO log VALUES (12, 'ernie', 'sshd', 'last message repeated 2 times', 1460092718) on DBD::DBM ok 2026 - prepare INSERT INTO log VALUES (13, 'ernie', 'shutdown', 'poweroff by root:', 1460089118) on DBD::DBM ok 2027 - execute INSERT INTO log VALUES (13, 'ernie', 'shutdown', 'poweroff by root:', 1460089118) on DBD::DBM ok 2028 - prepare INSERT INTO log VALUES (14, 'ernie', 'shutdown', 'rebooted by root', 1460085518) on DBD::DBM ok 2029 - execute INSERT INTO log VALUES (14, 'ernie', 'shutdown', 'rebooted by root', 1460085518) on DBD::DBM ok 2030 - prepare INSERT INTO log VALUES (15, 'ernie', 'sshd', 'Server listening on :: port 22.', 1460081918) on DBD::DBM ok 2031 - execute INSERT INTO log VALUES (15, 'ernie', 'sshd', 'Server listening on :: port 22.', 1460081918) on DBD::DBM ok 2032 - prepare INSERT INTO log VALUES (16, 'ernie', 'sshd', 'Server listening on 0.0.0.0 port 22.', 1460078318) on DBD::DBM ok 2033 - execute INSERT INTO log VALUES (16, 'ernie', 'sshd', 'Server listening on 0.0.0.0 port 22.', 1460078318) on DBD::DBM ok 2034 - prepare INSERT INTO log VALUES (17, 'ernie', 'sshd', 'Received SIGHUP; restarting.', 1460074718) on DBD::DBM ok 2035 - execute INSERT INTO log VALUES (17, 'ernie', 'sshd', 'Received SIGHUP; restarting.', 1460074718) on DBD::DBM ok 2036 - prepare SELECT class,SUM(sales) as foo, MAX(sales) FROM biz GROUP BY class using DBD::DBM ok 2037 - execute SELECT class,SUM(sales) as foo, MAX(sales) FROM biz GROUP BY class using DBD::DBM ok 2038 - GROUP BY one column ok 2039 - prepare SELECT color,class,SUM(sales), MAX(sales) FROM biz GROUP BY color,class using DBD::DBM ok 2040 - execute SELECT color,class,SUM(sales), MAX(sales) FROM biz GROUP BY color,class using DBD::DBM ok 2041 - GROUP BY several columns ok 2042 - prepare SELECT SUM(sales), MAX(sales) FROM biz using DBD::DBM ok 2043 - execute SELECT SUM(sales), MAX(sales) FROM biz using DBD::DBM ok 2044 - AGGREGATE FUNCTIONS WITHOUT GROUP BY ok 2045 - prepare SELECT COUNT(DISTINCT class) FROM biz using DBD::DBM ok 2046 - execute SELECT COUNT(DISTINCT class) FROM biz using DBD::DBM ok 2047 - COUNT(distinct column) WITHOUT GROUP BY ok 2048 - prepare SELECT distinct class, COUNT(distinct color) FROM biz GROUP BY class using DBD::DBM ok 2049 - execute SELECT distinct class, COUNT(distinct color) FROM biz GROUP BY class using DBD::DBM ok 2050 - COUNT(distinct column) WITH GROUP BY ok 2051 - prepare SELECT class, COUNT(*) FROM biz GROUP BY class using DBD::DBM ok 2052 - execute SELECT class, COUNT(*) FROM biz GROUP BY class using DBD::DBM ok 2053 - COUNT(*) with GROUP BY ok 2054 - prepare SELECT DISTINCT biz.class, baz.color AS foo FROM biz, baz WHERE biz.class = baz.class ORDER BY foo using DBD::DBM ok 2055 - execute SELECT DISTINCT biz.class, baz.color AS foo FROM biz, baz WHERE biz.class = baz.class ORDER BY foo using DBD::DBM ok 2056 - ORDER BY on aliased column ok 2057 - prepare SELECT class, COUNT(distinct *) FROM biz GROUP BY class using DBD::DBM fails ok 2058 - COUNT(DISTINCT *) fails ok 2059 - prepare SELECT class, COUNT(color) FROM biz using DBD::DBM ok 2060 - execute SELECT class, COUNT(color) FROM biz using DBD::DBM fails ok 2061 - GROUP BY required ok 2062 - prepare SELECT SUM(bar) FROM numbers using DBD::DBM ok 2063 - execute SELECT SUM(bar) FROM numbers using DBD::DBM ok 2064 - SUM(bar) of empty table ok 2065 - prepare SELECT COUNT(bar),c_foo FROM numbers GROUP BY c_foo using DBD::DBM ok 2066 - execute SELECT COUNT(bar),c_foo FROM numbers GROUP BY c_foo using DBD::DBM ok 2067 - COUNT(bar) of empty table with GROUP BY ok 2068 - prepare SELECT COUNT(*) FROM numbers using DBD::DBM ok 2069 - execute SELECT COUNT(*) FROM numbers using DBD::DBM ok 2070 - COUNT(*) of empty table ok 2071 - prepare INSERT INTO numbers VALUES (?, ?, ?) using DBD::DBM ok 2072 - 1 .. 3999: execute INSERT INTO numbers VALUES (?, ?, ?) using DBD::DBM ok 2073 - prepare SELECT foo AS boo, COUNT (*) AS counted FROM numbers GROUP BY boo using DBD::DBM ok 2074 - execute SELECT foo AS boo, COUNT (*) AS counted FROM numbers GROUP BY boo using DBD::DBM ok 2075 - Columns in Number of rows in aggregated Table ok 2076 - Number of rows in aggregated Table ok 2077 - SUM(COUNTED) ok 2078 - prepare SELECT MIN(c_foo), MAX(c_foo), AVG(c_foo) FROM numbers using DBD::DBM ok 2079 - execute SELECT MIN(c_foo), MAX(c_foo), AVG(c_foo) FROM numbers using DBD::DBM ok 2080 - Aggregate functions MIN, MAX, AVG ok 2081 - prepare SELECT COUNT(*) FROM trick using DBD::DBM ok 2082 - execute SELECT COUNT(*) FROM trick using DBD::DBM ok 2083 - COUNT(*) internal for nasty table ok 2084 - prepare SELECT CURRENT_DATE() using DBD::DBM ok 2085 - execute SELECT CURRENT_DATE() using DBD::DBM ok 2086 - current_date int ok 2087 - prepare SELECT CURRENT_TIME using DBD::DBM ok 2088 - execute SELECT CURRENT_TIME using DBD::DBM ok 2089 - current_time int ok 2090 - prepare SELECT CURRENT_TIMESTAMP() using DBD::DBM ok 2091 - execute SELECT CURRENT_TIMESTAMP() using DBD::DBM ok 2092 - current_timestamp int ok 2093 - prepare SELECT CURDATE using DBD::DBM ok 2094 - execute SELECT CURDATE using DBD::DBM ok 2095 - curdate int ok 2096 - prepare SELECT CURTIME() using DBD::DBM ok 2097 - execute SELECT CURTIME() using DBD::DBM ok 2098 - curtime int ok 2099 - prepare SELECT NOW using DBD::DBM ok 2100 - execute SELECT NOW using DBD::DBM ok 2101 - now int ok 2102 - prepare SELECT UNIX_TIMESTAMP() using DBD::DBM ok 2103 - execute SELECT UNIX_TIMESTAMP() using DBD::DBM ok 2104 - unix_timestamp int ok 2105 - prepare SELECT CURRENT_TIME (1) using DBD::DBM ok 2106 - execute SELECT CURRENT_TIME (1) using DBD::DBM ok 2107 - current_time precision ok 2108 - prepare SELECT CURRENT_TIMESTAMP (2) using DBD::DBM ok 2109 - execute SELECT CURRENT_TIMESTAMP (2) using DBD::DBM ok 2110 - current_timestamp precision ok 2111 - prepare SELECT CURTIME (3) using DBD::DBM ok 2112 - execute SELECT CURTIME (3) using DBD::DBM ok 2113 - curtime precision ok 2114 - prepare SELECT NOW(4) using DBD::DBM ok 2115 - execute SELECT NOW(4) using DBD::DBM ok 2116 - now precision ok 2117 - prepare SELECT UNIX_TIMESTAMP(5) using DBD::DBM ok 2118 - execute SELECT UNIX_TIMESTAMP(5) using DBD::DBM ok 2119 - unix_timestamp precision ok 2120 - prepare SELECT ASCII('A') using DBD::DBM ok 2121 - execute SELECT ASCII('A') using DBD::DBM ok 2122 - ascii char ok 2123 - prepare SELECT ASCII('ABC') using DBD::DBM ok 2124 - execute SELECT ASCII('ABC') using DBD::DBM ok 2125 - ascii str ok 2126 - prepare SELECT CHAR() using DBD::DBM ok 2127 - execute SELECT CHAR() using DBD::DBM ok 2128 - char blank ok 2129 - prepare SELECT CHAR(65) using DBD::DBM ok 2130 - execute SELECT CHAR(65) using DBD::DBM ok 2131 - char char ok 2132 - prepare SELECT CHAR(CONV('263A', 16)) using DBD::DBM ok 2133 - execute SELECT CHAR(CONV('263A', 16)) using DBD::DBM ok 2134 - char char unicode ok 2135 - prepare SELECT CHAR(CONV('263A', 16), 9787, CONV('10011000111100', 2)) using DBD::DBM ok 2136 - execute SELECT CHAR(CONV('263A', 16), 9787, CONV('10011000111100', 2)) using DBD::DBM ok 2137 - char str unicode ok 2138 - prepare SELECT CHAR(65,66,67) using DBD::DBM ok 2139 - execute SELECT CHAR(65,66,67) using DBD::DBM ok 2140 - char str ok 2141 - prepare SELECT BIT_LENGTH(' oo') using DBD::DBM ok 2142 - execute SELECT BIT_LENGTH(' oo') using DBD::DBM ok 2143 - bit_length 6bit ok 2144 - prepare SELECT BIT_LENGTH('foo') using DBD::DBM ok 2145 - execute SELECT BIT_LENGTH('foo') using DBD::DBM ok 2146 - bit_length 7bit ok 2147 - prepare SELECT BIT_LENGTH(CHAR(9786, 9787, 9788)) using DBD::DBM ok 2148 - execute SELECT BIT_LENGTH(CHAR(9786, 9787, 9788)) using DBD::DBM ok 2149 - bit_length unicode ok 2150 - prepare SELECT CHARACTER_LENGTH('foo') using DBD::DBM ok 2151 - execute SELECT CHARACTER_LENGTH('foo') using DBD::DBM ok 2152 - character_length ok 2153 - prepare SELECT CHAR_LENGTH('foo') using DBD::DBM ok 2154 - execute SELECT CHAR_LENGTH('foo') using DBD::DBM ok 2155 - char_length ok 2156 - prepare SELECT CHARACTER_LENGTH(CHAR(9786, 9787, 9788)) using DBD::DBM ok 2157 - execute SELECT CHARACTER_LENGTH(CHAR(9786, 9787, 9788)) using DBD::DBM ok 2158 - character_length unicode ok 2159 - prepare SELECT CHAR_LENGTH(CHAR(9786, 9787, 9788)) using DBD::DBM ok 2160 - execute SELECT CHAR_LENGTH(CHAR(9786, 9787, 9788)) using DBD::DBM ok 2161 - char_length unicode ok 2162 - prepare SELECT COALESCE(NULL,'z') using DBD::DBM ok 2163 - execute SELECT COALESCE(NULL,'z') using DBD::DBM ok 2164 - coalesce ok 2165 - prepare SELECT NVL(NULL,'z') using DBD::DBM ok 2166 - execute SELECT NVL(NULL,'z') using DBD::DBM ok 2167 - nvl ok 2168 - prepare SELECT IFNULL(NULL,'z') using DBD::DBM ok 2169 - execute SELECT IFNULL(NULL,'z') using DBD::DBM ok 2170 - ifnull ok 2171 - prepare SELECT CONCAT('A','B') using DBD::DBM ok 2172 - execute SELECT CONCAT('A','B') using DBD::DBM ok 2173 - concat good ok 2174 - prepare SELECT CONCAT('A',NULL) using DBD::DBM ok 2175 - execute SELECT CONCAT('A',NULL) using DBD::DBM ok 2176 - concat bad ok 2177 - prepare SELECT CONV('10101001111011101101011', 2, 64) using DBD::DBM ok 2178 - execute SELECT CONV('10101001111011101101011', 2, 64) using DBD::DBM ok 2179 - conv 2->64 ok 2180 - prepare SELECT CONV('10101001111011101101011', 2, 16) using DBD::DBM ok 2181 - execute SELECT CONV('10101001111011101101011', 2, 16) using DBD::DBM ok 2182 - conv 2->16 ok 2183 - prepare SELECT CONV('10101001111011101101011', 2, 10) using DBD::DBM ok 2184 - execute SELECT CONV('10101001111011101101011', 2, 10) using DBD::DBM ok 2185 - conv 2->10 ok 2186 - prepare SELECT CONV('10101001111011101101011', 2, 8) using DBD::DBM ok 2187 - execute SELECT CONV('10101001111011101101011', 2, 8) using DBD::DBM ok 2188 - conv 2->8 ok 2189 - prepare SELECT CONV('10101001111011101101011', 2, 2) using DBD::DBM ok 2190 - execute SELECT CONV('10101001111011101101011', 2, 2) using DBD::DBM ok 2191 - conv 2->2 ok 2192 - prepare select conv('16', 10, 16) using DBD::DBM ok 2193 - execute select conv('16', 10, 16) using DBD::DBM ok 2194 - conv 10->16 integer with trailing 0 ok 2195 - prepare select conv('0', 10, 16) using DBD::DBM ok 2196 - execute select conv('0', 10, 16) using DBD::DBM ok 2197 - conv 10->16 integer 0 ok 2198 - prepare SELECT DISTINCT DECODE(color,'White','W','Red','R','B') AS cfc FROM biz ORDER BY cfc using DBD::DBM ok 2199 - execute SELECT DISTINCT DECODE(color,'White','W','Red','R','B') AS cfc FROM biz ORDER BY cfc using DBD::DBM ok 2200 - decode ok 2201 - prepare SELECT INSERT('foodieland', 4, 3, 'bar') using DBD::DBM ok 2202 - execute SELECT INSERT('foodieland', 4, 3, 'bar') using DBD::DBM ok 2203 - insert good 1:1 ok 2204 - prepare SELECT INSERT('foodland', 4, 1, 'bar') using DBD::DBM ok 2205 - execute SELECT INSERT('foodland', 4, 1, 'bar') using DBD::DBM ok 2206 - insert good non-1:1 ok 2207 - prepare SELECT INSERT(NULL, 4, 1, 'bar') using DBD::DBM ok 2208 - execute SELECT INSERT(NULL, 4, 1, 'bar') using DBD::DBM ok 2209 - insert bad 1 ok 2210 - prepare SELECT INSERT('foodland', 4, 1, NULL) using DBD::DBM ok 2211 - execute SELECT INSERT('foodland', 4, 1, NULL) using DBD::DBM ok 2212 - insert bad 2 ok 2213 - prepare SELECT LEFT('foodland', 4) using DBD::DBM ok 2214 - execute SELECT LEFT('foodland', 4) using DBD::DBM ok 2215 - left good ok 2216 - prepare SELECT LEFT(NULL, 4) using DBD::DBM ok 2217 - execute SELECT LEFT(NULL, 4) using DBD::DBM ok 2218 - left bad 1 ok 2219 - prepare SELECT LEFT('foodland', NULL) using DBD::DBM ok 2220 - execute SELECT LEFT('foodland', NULL) using DBD::DBM ok 2221 - left bad 2 ok 2222 - prepare SELECT RIGHT('foodland', 4) using DBD::DBM ok 2223 - execute SELECT RIGHT('foodland', 4) using DBD::DBM ok 2224 - right good ok 2225 - prepare SELECT RIGHT(NULL, 4) using DBD::DBM ok 2226 - execute SELECT RIGHT(NULL, 4) using DBD::DBM ok 2227 - right bad 1 ok 2228 - prepare SELECT RIGHT('foodland', NULL) using DBD::DBM ok 2229 - execute SELECT RIGHT('foodland', NULL) using DBD::DBM ok 2230 - right bad 2 ok 2231 - prepare SELECT LOCATE('a','bar') using DBD::DBM ok 2232 - execute SELECT LOCATE('a','bar') using DBD::DBM ok 2233 - locate 2param ok 2234 - prepare SELECT LOCATE('a','barafa',3) using DBD::DBM ok 2235 - execute SELECT LOCATE('a','barafa',3) using DBD::DBM ok 2236 - locate 3param ok 2237 - prepare SELECT POSITION('a','bar') using DBD::DBM ok 2238 - execute SELECT POSITION('a','bar') using DBD::DBM ok 2239 - position 2param ok 2240 - prepare SELECT POSITION('a','barafa',3) using DBD::DBM ok 2241 - execute SELECT POSITION('a','barafa',3) using DBD::DBM ok 2242 - position 3param ok 2243 - prepare SELECT LOWER('A') using DBD::DBM ok 2244 - execute SELECT LOWER('A') using DBD::DBM ok 2245 - lower ok 2246 - prepare SELECT UPPER('a') using DBD::DBM ok 2247 - execute SELECT UPPER('a') using DBD::DBM ok 2248 - upper ok 2249 - prepare SELECT LCASE('A') using DBD::DBM ok 2250 - execute SELECT LCASE('A') using DBD::DBM ok 2251 - lcase ok 2252 - prepare SELECT UCASE('a') using DBD::DBM ok 2253 - execute SELECT UCASE('a') using DBD::DBM ok 2254 - ucase ok 2255 - prepare SELECT LTRIM(' fun ') using DBD::DBM ok 2256 - execute SELECT LTRIM(' fun ') using DBD::DBM ok 2257 - ltrim ok 2258 - prepare SELECT RTRIM(' fun ') using DBD::DBM ok 2259 - execute SELECT RTRIM(' fun ') using DBD::DBM ok 2260 - rtrim ok 2261 - prepare SELECT OCTET_LENGTH('foo') using DBD::DBM ok 2262 - execute SELECT OCTET_LENGTH('foo') using DBD::DBM ok 2263 - octet_length ok 2264 - prepare SELECT OCTET_LENGTH(CHAR(64, 169, 9786, 65572)) using DBD::DBM ok 2265 - execute SELECT OCTET_LENGTH(CHAR(64, 169, 9786, 65572)) using DBD::DBM ok 2266 - octet_length unicode ok 2267 - prepare SELECT REGEX('jeff','/EF/i') using DBD::DBM ok 2268 - execute SELECT REGEX('jeff','/EF/i') using DBD::DBM ok 2269 - regex match ok 2270 - prepare SELECT REGEX('jeff','/zzz/') using DBD::DBM ok 2271 - execute SELECT REGEX('jeff','/zzz/') using DBD::DBM ok 2272 - regex no match ok 2273 - prepare SELECT REPEAT('zfunkY', 3) using DBD::DBM ok 2274 - execute SELECT REPEAT('zfunkY', 3) using DBD::DBM ok 2275 - repeat ok 2276 - prepare SELECT REPLACE('zfunkY','s/z(.+)ky/$1/i') using DBD::DBM ok 2277 - execute SELECT REPLACE('zfunkY','s/z(.+)ky/$1/i') using DBD::DBM ok 2278 - replace ok 2279 - prepare SELECT SUBSTITUTE('zfunkY','s/z(.+)ky/$1/i') using DBD::DBM ok 2280 - execute SELECT SUBSTITUTE('zfunkY','s/z(.+)ky/$1/i') using DBD::DBM ok 2281 - substitute ok 2282 - prepare SELECT SOUNDEX('jeff','jeph') using DBD::DBM ok 2283 - execute SELECT SOUNDEX('jeff','jeph') using DBD::DBM ok 2284 - soundex match ok 2285 - prepare SELECT SOUNDEX('jeff','quartz') using DBD::DBM ok 2286 - execute SELECT SOUNDEX('jeff','quartz') using DBD::DBM ok 2287 - soundex no match ok 2288 - prepare SELECT SPACE(10) using DBD::DBM ok 2289 - execute SELECT SPACE(10) using DBD::DBM ok 2290 - space ok 2291 - prepare SELECT SUBSTR('zfunkY',2,3) using DBD::DBM ok 2292 - execute SELECT SUBSTR('zfunkY',2,3) using DBD::DBM ok 2293 - substr ok 2294 - prepare SELECT DISTINCT color FROM biz WHERE SUBSTRING(class FROM 1 FOR 1)='T' using DBD::DBM ok 2295 - execute SELECT DISTINCT color FROM biz WHERE SUBSTRING(class FROM 1 FOR 1)='T' using DBD::DBM ok 2296 - substring ok 2297 - prepare SELECT TRANSLATE('foobar forever', 'oae', '0@3') using DBD::DBM ok 2298 - execute SELECT TRANSLATE('foobar forever', 'oae', '0@3') using DBD::DBM ok 2299 - translate ok 2300 - prepare SELECT TRIM(' fun ') using DBD::DBM ok 2301 - execute SELECT TRIM(' fun ') using DBD::DBM ok 2302 - trim simple not ok 2303 - prepare SELECT TRIM(LEADING FROM ' fun ') using DBD::DBM # TODO Analyze why this fails; may be thinking FROM keyword is for table specs # Failed (TODO) test 'prepare SELECT TRIM(LEADING FROM ' fun ') using DBD::DBM' # at t/06virtual.t line 1419. # Unbalanced parentheses! not ok 2304 - prepare SELECT TRIM(TRAILING FROM ' fun ') using DBD::DBM # TODO Analyze why this fails; may be thinking FROM keyword is for table specs # Failed (TODO) test 'prepare SELECT TRIM(TRAILING FROM ' fun ') using DBD::DBM' # at t/06virtual.t line 1419. # Unbalanced parentheses! not ok 2305 - prepare SELECT TRIM(LEADING ';' FROM ';;; fun ') using DBD::DBM # TODO Analyze why this fails; may be thinking FROM keyword is for table specs # Failed (TODO) test 'prepare SELECT TRIM(LEADING ';' FROM ';;; fun ') using DBD::DBM' # at t/06virtual.t line 1419. # Unbalanced parentheses! ok 2306 - prepare SELECT UNHEX('414243') using DBD::DBM ok 2307 - execute SELECT UNHEX('414243') using DBD::DBM ok 2308 - unhex str ok 2309 - prepare SELECT UNHEX('263A' || HEX(9787) || CONV('10011000111100', 2, 16), 'UCS-2') using DBD::DBM ok 2310 - execute SELECT UNHEX('263A' || HEX(9787) || CONV('10011000111100', 2, 16), 'UCS-2') using DBD::DBM ok 2311 - unhex str unicode ok 2312 - prepare SELECT BIN('9788') using DBD::DBM ok 2313 - execute SELECT BIN('9788') using DBD::DBM ok 2314 - bin from dec ok 2315 - prepare SELECT OCT('420') using DBD::DBM ok 2316 - execute SELECT OCT('420') using DBD::DBM ok 2317 - oct from dec ok 2318 - prepare SELECT ABS(-4) using DBD::DBM ok 2319 - execute SELECT ABS(-4) using DBD::DBM ok 2320 - abs ok 2321 - prepare SELECT CEILING(5) using DBD::DBM ok 2322 - execute SELECT CEILING(5) using DBD::DBM ok 2323 - ceiling int ok 2324 - prepare SELECT CEILING(4.1) using DBD::DBM ok 2325 - execute SELECT CEILING(4.1) using DBD::DBM ok 2326 - ceiling positive ok 2327 - prepare SELECT CEIL(-4.5) using DBD::DBM ok 2328 - execute SELECT CEIL(-4.5) using DBD::DBM ok 2329 - ceil negative ok 2330 - prepare SELECT FLOOR(-5) using DBD::DBM ok 2331 - execute SELECT FLOOR(-5) using DBD::DBM ok 2332 - floor int ok 2333 - prepare SELECT FLOOR(4.999999999999) using DBD::DBM ok 2334 - execute SELECT FLOOR(4.999999999999) using DBD::DBM ok 2335 - floor positive ok 2336 - prepare SELECT FLOOR(-4.1) using DBD::DBM ok 2337 - execute SELECT FLOOR(-4.1) using DBD::DBM ok 2338 - floor negative ok 2339 - prepare SELECT EXP(1) using DBD::DBM ok 2340 - execute SELECT EXP(1) using DBD::DBM ok 2341 - exp ok 2342 - prepare SELECT LOG(6) using DBD::DBM ok 2343 - execute SELECT LOG(6) using DBD::DBM ok 2344 - log as log10 ok 2345 - prepare SELECT LOG(2, 32) using DBD::DBM ok 2346 - execute SELECT LOG(2, 32) using DBD::DBM ok 2347 - log as log2 ok 2348 - prepare SELECT LN(3) using DBD::DBM ok 2349 - execute SELECT LN(3) using DBD::DBM ok 2350 - ln ok 2351 - prepare SELECT MOD(8, 5) using DBD::DBM ok 2352 - execute SELECT MOD(8, 5) using DBD::DBM ok 2353 - mod ok 2354 - prepare SELECT POWER(2, 4) using DBD::DBM ok 2355 - execute SELECT POWER(2, 4) using DBD::DBM ok 2356 - power ok 2357 - prepare SELECT POW(2, 4) using DBD::DBM ok 2358 - execute SELECT POW(2, 4) using DBD::DBM ok 2359 - pow ok 2360 - prepare SELECT FLOOR(RAND(4)) using DBD::DBM ok 2361 - execute SELECT FLOOR(RAND(4)) using DBD::DBM ok 2362 - rand ok 2363 - prepare SELECT FLOOR(RAND(4), UNIX_TIMESTAMP()) using DBD::DBM ok 2364 - execute SELECT FLOOR(RAND(4), UNIX_TIMESTAMP()) using DBD::DBM ok 2365 - rand with seed ok 2366 - prepare SELECT ROUND(4.999999999999) using DBD::DBM ok 2367 - execute SELECT ROUND(4.999999999999) using DBD::DBM ok 2368 - round int ok 2369 - prepare SELECT ROUND(4.542222222222, 1) using DBD::DBM ok 2370 - execute SELECT ROUND(4.542222222222, 1) using DBD::DBM ok 2371 - round tenth ok 2372 - prepare SELECT SIGN(-25.5) using DBD::DBM ok 2373 - execute SELECT SIGN(-25.5) using DBD::DBM ok 2374 - sign -1 ok 2375 - prepare SELECT SIGN(53645) using DBD::DBM ok 2376 - execute SELECT SIGN(53645) using DBD::DBM ok 2377 - sign 1 ok 2378 - prepare SELECT SIGN(0) using DBD::DBM ok 2379 - execute SELECT SIGN(0) using DBD::DBM ok 2380 - sign 0 ok 2381 - prepare SELECT SIGN(NULL) using DBD::DBM ok 2382 - execute SELECT SIGN(NULL) using DBD::DBM ok 2383 - sign null ok 2384 - prepare SELECT SQRT(64) using DBD::DBM ok 2385 - execute SELECT SQRT(64) using DBD::DBM ok 2386 - sqrt ok 2387 - prepare SELECT TRUNCATE(4.999999999999) using DBD::DBM ok 2388 - execute SELECT TRUNCATE(4.999999999999) using DBD::DBM ok 2389 - truncate int ok 2390 - prepare SELECT TRUNC(-4.9) using DBD::DBM ok 2391 - execute SELECT TRUNC(-4.9) using DBD::DBM ok 2392 - trunc int ok 2393 - prepare SELECT TRUNCATE(4.934, 1) using DBD::DBM ok 2394 - execute SELECT TRUNCATE(4.934, 1) using DBD::DBM ok 2395 - truncate tenth ok 2396 - prepare SELECT TRUNC(-4.99999, 1) using DBD::DBM ok 2397 - execute SELECT TRUNC(-4.99999, 1) using DBD::DBM ok 2398 - trunc int ok 2399 - prepare SELECT SIN(1) using DBD::DBM ok 2400 - execute SELECT SIN(1) using DBD::DBM ok 2401 - sin(1) => near? 0.841470984807897 ~= 0.841470984807897 ok 2402 - prepare SELECT COS(1) using DBD::DBM ok 2403 - execute SELECT COS(1) using DBD::DBM ok 2404 - cos(1) => near? 0.54030230586814 ~= 0.54030230586814 ok 2405 - prepare SELECT TAN(1) using DBD::DBM ok 2406 - execute SELECT TAN(1) using DBD::DBM ok 2407 - tan(1) => near? 1.5574077246549 ~= 1.5574077246549 ok 2408 - prepare SELECT SEC(1) using DBD::DBM ok 2409 - execute SELECT SEC(1) using DBD::DBM ok 2410 - sec(1) => near? 1.85081571768093 ~= 1.85081571768093 ok 2411 - prepare SELECT CSC(1) using DBD::DBM ok 2412 - execute SELECT CSC(1) using DBD::DBM ok 2413 - csc(1) => near? 1.18839510577812 ~= 1.18839510577812 ok 2414 - prepare SELECT COSEC(1) using DBD::DBM ok 2415 - execute SELECT COSEC(1) using DBD::DBM ok 2416 - cosec(1) => near? 1.18839510577812 ~= 1.18839510577812 ok 2417 - prepare SELECT COT(1) using DBD::DBM ok 2418 - execute SELECT COT(1) using DBD::DBM ok 2419 - cot(1) => near? 0.642092615934331 ~= 0.642092615934331 ok 2420 - prepare SELECT COTAN(1) using DBD::DBM ok 2421 - execute SELECT COTAN(1) using DBD::DBM ok 2422 - cotan(1) => near? 0.642092615934331 ~= 0.642092615934331 ok 2423 - prepare SELECT ASIN(1) using DBD::DBM ok 2424 - execute SELECT ASIN(1) using DBD::DBM ok 2425 - asin(1) => near? 1.5707963267949 ~= 1.5707963267949 ok 2426 - prepare SELECT ACOS(1) using DBD::DBM ok 2427 - execute SELECT ACOS(1) using DBD::DBM ok 2428 - acos(1) => near? 0 ~= 0 ok 2429 - prepare SELECT ATAN(1) using DBD::DBM ok 2430 - execute SELECT ATAN(1) using DBD::DBM ok 2431 - atan(1) => near? 0.785398163397448 ~= 0.785398163397448 ok 2432 - prepare SELECT ASEC(1) using DBD::DBM ok 2433 - execute SELECT ASEC(1) using DBD::DBM ok 2434 - asec(1) => near? 0 ~= 0 ok 2435 - prepare SELECT ACSC(1) using DBD::DBM ok 2436 - execute SELECT ACSC(1) using DBD::DBM ok 2437 - acsc(1) => near? 1.5707963267949 ~= 1.5707963267949 ok 2438 - prepare SELECT ACOSEC(1) using DBD::DBM ok 2439 - execute SELECT ACOSEC(1) using DBD::DBM ok 2440 - acosec(1) => near? 1.5707963267949 ~= 1.5707963267949 ok 2441 - prepare SELECT ACOT(1) using DBD::DBM ok 2442 - execute SELECT ACOT(1) using DBD::DBM ok 2443 - acot(1) => near? 0.785398163397448 ~= 0.785398163397448 ok 2444 - prepare SELECT ACOTAN(1) using DBD::DBM ok 2445 - execute SELECT ACOTAN(1) using DBD::DBM ok 2446 - acotan(1) => near? 0.785398163397448 ~= 0.785398163397448 ok 2447 - prepare SELECT SINH(1) using DBD::DBM ok 2448 - execute SELECT SINH(1) using DBD::DBM ok 2449 - sinh(1) => near? 1.1752011936438 ~= 1.1752011936438 ok 2450 - prepare SELECT COSH(1) using DBD::DBM ok 2451 - execute SELECT COSH(1) using DBD::DBM ok 2452 - cosh(1) => near? 1.54308063481524 ~= 1.54308063481524 ok 2453 - prepare SELECT TANH(1) using DBD::DBM ok 2454 - execute SELECT TANH(1) using DBD::DBM ok 2455 - tanh(1) => near? 0.761594155955765 ~= 0.761594155955765 ok 2456 - prepare SELECT SECH(1) using DBD::DBM ok 2457 - execute SELECT SECH(1) using DBD::DBM ok 2458 - sech(1) => near? 0.648054273663885 ~= 0.648054273663885 ok 2459 - prepare SELECT CSCH(1) using DBD::DBM ok 2460 - execute SELECT CSCH(1) using DBD::DBM ok 2461 - csch(1) => near? 0.850918128239322 ~= 0.850918128239322 ok 2462 - prepare SELECT COSECH(1) using DBD::DBM ok 2463 - execute SELECT COSECH(1) using DBD::DBM ok 2464 - cosech(1) => near? 0.850918128239322 ~= 0.850918128239322 ok 2465 - prepare SELECT COTH(1) using DBD::DBM ok 2466 - execute SELECT COTH(1) using DBD::DBM ok 2467 - coth(1) => near? 1.31303528549933 ~= 1.31303528549933 ok 2468 - prepare SELECT COTANH(1) using DBD::DBM ok 2469 - execute SELECT COTANH(1) using DBD::DBM ok 2470 - cotanh(1) => near? 1.31303528549933 ~= 1.31303528549933 ok 2471 - prepare SELECT ASINH(1) using DBD::DBM ok 2472 - execute SELECT ASINH(1) using DBD::DBM ok 2473 - asinh(1) => near? 0.881373587019543 ~= 0.881373587019543 ok 2474 - prepare SELECT ACOSH(1) using DBD::DBM ok 2475 - execute SELECT ACOSH(1) using DBD::DBM ok 2476 - acosh(1) => near? 0 ~= 0 ok 2477 - prepare SELECT ATANH(0.9) using DBD::DBM ok 2478 - execute SELECT ATANH(0.9) using DBD::DBM ok 2479 - atanh(0.9) => near? 1.47221948958322 ~= 1.47221948958322 ok 2480 - prepare SELECT ASECH(0.9) using DBD::DBM ok 2481 - execute SELECT ASECH(0.9) using DBD::DBM ok 2482 - asech(0.9) => near? 0.467145308103262 ~= 0.467145308103262 ok 2483 - prepare SELECT ACSCH(2) using DBD::DBM ok 2484 - execute SELECT ACSCH(2) using DBD::DBM ok 2485 - acsch(2) => near? 0.481211825059603 ~= 0.481211825059603 ok 2486 - prepare SELECT ACOSECH(2) using DBD::DBM ok 2487 - execute SELECT ACOSECH(2) using DBD::DBM ok 2488 - acosech(2) => near? 0.481211825059603 ~= 0.481211825059603 ok 2489 - prepare SELECT ACOTH(2) using DBD::DBM ok 2490 - execute SELECT ACOTH(2) using DBD::DBM ok 2491 - acoth(2) => near? 0.549306144334055 ~= 0.549306144334055 ok 2492 - prepare SELECT ACOTANH(2) using DBD::DBM ok 2493 - execute SELECT ACOTANH(2) using DBD::DBM ok 2494 - acotanh(2) => near? 0.549306144334055 ~= 0.549306144334055 ok 2495 - prepare SELECT PI using DBD::DBM ok 2496 - execute SELECT PI using DBD::DBM ok 2497 - pi => near? 3.14159265358979 ~= 3.14159265358979 ok 2498 - prepare SELECT ATAN2(1, 0) using DBD::DBM ok 2499 - execute SELECT ATAN2(1, 0) using DBD::DBM ok 2500 - atan2(1, 0) => near? 1.5707963267949 ~= 1.5707963267949 ok 2501 - prepare SELECT ATAN2(1, 1) using DBD::DBM ok 2502 - execute SELECT ATAN2(1, 1) using DBD::DBM ok 2503 - atan2(1, 1) => near? 0.785398163397448 ~= 0.785398163397448 ok 2504 - prepare SELECT ATAN2(-1, -1) using DBD::DBM ok 2505 - execute SELECT ATAN2(-1, -1) using DBD::DBM ok 2506 - atan2(-1, -1) to -3pi/4 => near? -2.35619449019234 ~= -2.35619449019234 ok 2507 - prepare SELECT TAN(0.9) using DBD::DBM ok 2508 - execute SELECT TAN(0.9) using DBD::DBM ok 2509 - tan(0.9) as property sin/cos => near? 1.26015821755034 ~= 1.26015821755034 ok 2510 - prepare SELECT SINH(2) using DBD::DBM ok 2511 - execute SELECT SINH(2) using DBD::DBM ok 2512 - sinh(2) => near? 3.62686040784702 ~= 3.62686040784702 ok 2513 - prepare SELECT ACSCH(0.1) using DBD::DBM ok 2514 - execute SELECT ACSCH(0.1) using DBD::DBM ok 2515 - acsch 0.1 => near? 2.99822295029797 ~= 2.99822295029797 ok 2516 - prepare SELECT DEG2RAD(90) using DBD::DBM ok 2517 - execute SELECT DEG2RAD(90) using DBD::DBM ok 2518 - deg2rad(90) => near? 1.5707963267949 ~= 1.5707963267949 ok 2519 - prepare SELECT RADIANS(90) using DBD::DBM ok 2520 - execute SELECT RADIANS(90) using DBD::DBM ok 2521 - radians(90) => near? 1.5707963267949 ~= 1.5707963267949 ok 2522 - prepare SELECT RAD2DEG(PI) using DBD::DBM ok 2523 - execute SELECT RAD2DEG(PI) using DBD::DBM ok 2524 - rad2deg(PI) => near? 180 ~= 180 ok 2525 - prepare SELECT DEGREES(PI()) using DBD::DBM ok 2526 - execute SELECT DEGREES(PI()) using DBD::DBM ok 2527 - degrees(PI) => near? 180 ~= 180 ok 2528 - prepare SELECT DEG2GRAD(0.9) using DBD::DBM ok 2529 - execute SELECT DEG2GRAD(0.9) using DBD::DBM ok 2530 - deg2grad(0.9) => near? 1 ~= 1 ok 2531 - prepare SELECT GRAD2DEG(50) using DBD::DBM ok 2532 - execute SELECT GRAD2DEG(50) using DBD::DBM ok 2533 - grad2deg(50) => near? 45 ~= 45 ok 2534 - prepare SELECT RAD2GRAD(PI/2) using DBD::DBM # TODO Known limitation. Parser/Engine can not handle properly ok 2535 - execute SELECT RAD2GRAD(PI/2) using DBD::DBM # TODO Known limitation. Parser/Engine can not handle properly ok 2536 - rad2grad(pi/2) => near? 99.9999999999999 ~= 100 # TODO Known limitation. Parser/Engine can not handle properly ok 2537 - prepare SELECT RAD2GRAD(PI) using DBD::DBM ok 2538 - execute SELECT RAD2GRAD(PI) using DBD::DBM ok 2539 - rad2grad(pi) => near? 200 ~= 200 ok 2540 - prepare SELECT GRAD2RAD(200) using DBD::DBM ok 2541 - execute SELECT GRAD2RAD(200) using DBD::DBM ok 2542 - grad2rad(200) => near? 3.14159265358979 ~= 3.14159265358979 ok 2543 - prepare SELECT DEG2RAD(10000000000) using DBD::DBM ok 2544 - execute SELECT DEG2RAD(10000000000) using DBD::DBM ok 2545 - lotta radians - deg2rad(10000000000) => near? 4.88692191243172 ~= 4.88692191243172 ok 2546 - prepare SELECT RAD2DEG(-10000000000) using DBD::DBM ok 2547 - execute SELECT RAD2DEG(-10000000000) using DBD::DBM ok 2548 - negative degrees - rad2deg(-10000000000) => near? -330.8232421875 ~= -330.8232421875 ok 2549 - prepare SELECT RAD2DEG(10000) using DBD::DBM ok 2550 - execute SELECT RAD2DEG(10000) using DBD::DBM ok 2551 - positive degrees - rad2deg(10000) => near? 197.795130823273 ~= 197.795130823273 ok 2552 - prepare SELECT TANH(100) using DBD::DBM ok 2553 - execute SELECT TANH(100) using DBD::DBM ok 2554 - tanh 100 => near? 1 ~= 1 ok 2555 - prepare SELECT COTH(100) using DBD::DBM ok 2556 - execute SELECT COTH(100) using DBD::DBM ok 2557 - coth 100 => near? 1 ~= 1 ok 2558 - prepare SELECT TANH(-100) using DBD::DBM ok 2559 - execute SELECT TANH(-100) using DBD::DBM ok 2560 - tanh -100 => near? -1 ~= -1 ok 2561 - prepare SELECT COTH(-100) using DBD::DBM ok 2562 - execute SELECT COTH(-100) using DBD::DBM ok 2563 - coth -100 => near? -1 ~= -1 ok 2564 - prepare SELECT SECH(100000) using DBD::DBM ok 2565 - execute SELECT SECH(100000) using DBD::DBM ok 2566 - sech 1e5 => near? 0 ~= 0 ok 2567 - prepare SELECT CSCH(100000) using DBD::DBM ok 2568 - execute SELECT CSCH(100000) using DBD::DBM ok 2569 - csch 1e5 => near? 0 ~= 0 ok 2570 - prepare SELECT TANH(100000) using DBD::DBM ok 2571 - execute SELECT TANH(100000) using DBD::DBM ok 2572 - tanh 1e5 => near? 1 ~= 1 ok 2573 - prepare SELECT COTH(100000) using DBD::DBM ok 2574 - execute SELECT COTH(100000) using DBD::DBM ok 2575 - coth 1e5 => near? 1 ~= 1 ok 2576 - prepare SELECT SECH(-100000) using DBD::DBM ok 2577 - execute SELECT SECH(-100000) using DBD::DBM ok 2578 - sech -1e5 => near? 0 ~= 0 ok 2579 - prepare SELECT CSCH(-100000) using DBD::DBM ok 2580 - execute SELECT CSCH(-100000) using DBD::DBM ok 2581 - csch -1e5 => near? 0 ~= 0 ok 2582 - prepare SELECT TANH(-100000) using DBD::DBM ok 2583 - execute SELECT TANH(-100000) using DBD::DBM ok 2584 - tanh -1e5 => near? -1 ~= -1 ok 2585 - prepare SELECT COTH(-100000) using DBD::DBM ok 2586 - execute SELECT COTH(-100000) using DBD::DBM ok 2587 - coth -1e5 => near? -1 ~= -1 ok 2588 - prepare SELECT DBNAME() using DBD::DBM ok 2589 - execute SELECT DBNAME() using DBD::DBM ok 2590 - dbname ok 2591 - prepare SELECT USERNAME() using DBD::DBM ok 2592 - execute SELECT USERNAME() using DBD::DBM ok 2593 - username ok 2594 - prepare SELECT USER() using DBD::DBM ok 2595 - execute SELECT USER() using DBD::DBM ok 2596 - user ok 2597 - prepare SELECT id,host,signature,message FROM log WHERE time_stamp < (1460110718 - ( 4 * 60 )) using DBD::DBM ok 2598 - execute SELECT id,host,signature,message FROM log WHERE time_stamp < (1460110718 - ( 4 * 60 )) using DBD::DBM ok 2599 - SELECT with calculation in WHERE CLAUSE ok 2600 - prepare SELECT id,host,signature,message FROM log WHERE (time_stamp > (1460110718 - 5)) AND (time_stamp < (1460110718 + 5)) using DBD::DBM ok 2601 - execute SELECT id,host,signature,message FROM log WHERE (time_stamp > (1460110718 - 5)) AND (time_stamp < (1460110718 + 5)) using DBD::DBM ok 2602 - SELECT with calculation and logical expression in WHERE CLAUSE ok 2603 - prepare SELECT id,host,signature,message FROM log WHERE time_stamp BETWEEN ( 1460110718 - 5, 1460110718 + 5) using DBD::DBM ok 2604 - execute SELECT id,host,signature,message FROM log WHERE time_stamp BETWEEN ( 1460110718 - 5, 1460110718 + 5) using DBD::DBM ok 2605 - SELECT with calculated items in BETWEEN in WHERE CLAUSE ok 2606 - prepare SELECT MAX(time_stamp) FROM log WHERE time_stamp IN (1460110718 - (2*3600), 1460110718 - (4*3600)) using DBD::DBM ok 2607 - execute SELECT MAX(time_stamp) FROM log WHERE time_stamp IN (1460110718 - (2*3600), 1460110718 - (4*3600)) using DBD::DBM ok 2608 - MAX() with calculated WHERE clause ok 2609 - prepare SELECT MAX(time_stamp - 3*3600) FROM log using DBD::DBM ok 2610 - execute SELECT MAX(time_stamp - 3*3600) FROM log using DBD::DBM ok 2611 - calculation in MAX() ok 2612 - prepare SELECT MAX(time_stamp) - 3*3600 FROM log using DBD::DBM not ok 2613 - execute SELECT MAX(time_stamp) - 3*3600 FROM log using DBD::DBM # TODO Known limitation. Parser/Engine can not handle properly # Failed (TODO) test 'execute SELECT MAX(time_stamp) - 3*3600 FROM log using DBD::DBM' # at t/06virtual.t line 1468. # Can't find table containing column named 'max' at /Users/fly1600/cpanfly-5.16/var/cpan/build/SQL-Statement-1.409-HsNhn9/blib/lib/SQL/Statement/Function.pm line 222. not ok 2614 - Caclulation outside aggregation # TODO Known limitation. Parser/Engine can not handle properly # Failed (TODO) test 'Caclulation outside aggregation' # at t/06virtual.t line 1499. # Structures begin differing at: # $got->[0] = Does not exist # $expected->[0] = ARRAY(0x1022ac7d8) ok 2615 - prepare SELECT MAX( CHAR_LENGTH(message) ) FROM log using DBD::DBM ok 2616 - execute SELECT MAX( CHAR_LENGTH(message) ) FROM log using DBD::DBM ok 2617 - function in MAX() ok 2618 - prepare SELECT 1+0 from log using DBD::DBM ok 2619 - execute SELECT 1+0 from log using DBD::DBM ok 2620 - select simple calculated constant from table ok 2621 - prepare SELECT 1+1*2 using DBD::DBM ok 2622 - execute SELECT 1+1*2 using DBD::DBM ok 2623 - select calculated constant with preceedence rules ok 2624 - prepare SELECT 1 using DBD::DBM ok 2625 - execute SELECT 1 using DBD::DBM ok 2626 - SELECT not calculated constant 1..2626 ok t/08join.t ...... # # Using required: # # SQL::Statement: 1.409 # # Using recommended: # # DBD::CSV: 0.48 # # DBD::DBM: 0.08 # # DBD::File: 0.44 # # DBI: 1.634 # # MLDBM: 2.05 # Running tests for SQL::Statement ok 1 - prepare CREATE TEMP TABLE Prof (pname CHAR, pid INT) on SQL::Statement ok 2 - execute CREATE TEMP TABLE Prof (pname CHAR, pid INT) on SQL::Statement ok 3 - prepare INSERT INTO Prof VALUES ('Sue', 1) on SQL::Statement ok 4 - execute INSERT INTO Prof VALUES ('Sue', 1) on SQL::Statement ok 5 - prepare INSERT INTO Prof VALUES ('Bob', 2) on SQL::Statement ok 6 - execute INSERT INTO Prof VALUES ('Bob', 2) on SQL::Statement ok 7 - prepare INSERT INTO Prof VALUES ('Tom', 3) on SQL::Statement ok 8 - execute INSERT INTO Prof VALUES ('Tom', 3) on SQL::Statement ok 9 - prepare CREATE TEMP TABLE Subject (sname CHAR, pid INT) on SQL::Statement ok 10 - execute CREATE TEMP TABLE Subject (sname CHAR, pid INT) on SQL::Statement ok 11 - prepare INSERT INTO Subject VALUES ('Chem', 1) on SQL::Statement ok 12 - execute INSERT INTO Subject VALUES ('Chem', 1) on SQL::Statement ok 13 - prepare INSERT INTO Subject VALUES ('Bio', 2) on SQL::Statement ok 14 - execute INSERT INTO Subject VALUES ('Bio', 2) on SQL::Statement ok 15 - prepare INSERT INTO Subject VALUES ('Math', 2) on SQL::Statement ok 16 - execute INSERT INTO Subject VALUES ('Math', 2) on SQL::Statement ok 17 - prepare INSERT INTO Subject VALUES ('English', 4) on SQL::Statement ok 18 - execute INSERT INTO Subject VALUES ('English', 4) on SQL::Statement ok 19 - prepare CREATE TEMP TABLE Room (rname CHAR, pid INT) on SQL::Statement ok 20 - execute CREATE TEMP TABLE Room (rname CHAR, pid INT) on SQL::Statement ok 21 - prepare INSERT INTO Room VALUES ('1C', 1) on SQL::Statement ok 22 - execute INSERT INTO Room VALUES ('1C', 1) on SQL::Statement ok 23 - prepare INSERT INTO Room VALUES ('2B', 2) on SQL::Statement ok 24 - execute INSERT INTO Room VALUES ('2B', 2) on SQL::Statement ok 25 - prepare CREATE TEMP TABLE author (author_name CHAR, author_id INT) on SQL::Statement ok 26 - execute CREATE TEMP TABLE author (author_name CHAR, author_id INT) on SQL::Statement ok 27 - prepare INSERT INTO author VALUES ('Neal Stephenson',1) on SQL::Statement ok 28 - execute INSERT INTO author VALUES ('Neal Stephenson',1) on SQL::Statement ok 29 - prepare INSERT INTO author VALUES ('Vernor Vinge',2) on SQL::Statement ok 30 - execute INSERT INTO author VALUES ('Vernor Vinge',2) on SQL::Statement ok 31 - prepare CREATE TEMP TABLE book (book_title CHAR, author_id INT) on SQL::Statement ok 32 - execute CREATE TEMP TABLE book (book_title CHAR, author_id INT) on SQL::Statement ok 33 - prepare INSERT INTO book VALUES ('Cryptonomicon',1) on SQL::Statement ok 34 - execute INSERT INTO book VALUES ('Cryptonomicon',1) on SQL::Statement ok 35 - prepare INSERT INTO book VALUES ('Dahlgren',3) on SQL::Statement ok 36 - execute INSERT INTO book VALUES ('Dahlgren',3) on SQL::Statement ok 37 - prepare CREATE TEMP TABLE t1 (num INT, name CHAR) on SQL::Statement ok 38 - execute CREATE TEMP TABLE t1 (num INT, name CHAR) on SQL::Statement ok 39 - prepare INSERT INTO t1 VALUES (1,'a') on SQL::Statement ok 40 - execute INSERT INTO t1 VALUES (1,'a') on SQL::Statement ok 41 - prepare INSERT INTO t1 VALUES (2,'b') on SQL::Statement ok 42 - execute INSERT INTO t1 VALUES (2,'b') on SQL::Statement ok 43 - prepare INSERT INTO t1 VALUES (3,'c') on SQL::Statement ok 44 - execute INSERT INTO t1 VALUES (3,'c') on SQL::Statement ok 45 - prepare CREATE TEMP TABLE t2 (num INT, wert CHAR) on SQL::Statement ok 46 - execute CREATE TEMP TABLE t2 (num INT, wert CHAR) on SQL::Statement ok 47 - prepare INSERT INTO t2 VALUES (1,'xxx') on SQL::Statement ok 48 - execute INSERT INTO t2 VALUES (1,'xxx') on SQL::Statement ok 49 - prepare INSERT INTO t2 VALUES (3,'yyy') on SQL::Statement ok 50 - execute INSERT INTO t2 VALUES (3,'yyy') on SQL::Statement ok 51 - prepare INSERT INTO t2 VALUES (5,'zzz') on SQL::Statement ok 52 - execute INSERT INTO t2 VALUES (5,'zzz') on SQL::Statement ok 53 - prepare CREATE TEMP TABLE APPL (id INT, applname CHAR, appluniq CHAR, version CHAR, appl_type CHAR) on SQL::Statement ok 54 - execute CREATE TEMP TABLE APPL (id INT, applname CHAR, appluniq CHAR, version CHAR, appl_type CHAR) on SQL::Statement ok 55 - prepare INSERT INTO APPL VALUES ( 1, 'ZQF', 'ZFQLIN', '10.2.0.4', 'Oracle DB') on SQL::Statement ok 56 - execute INSERT INTO APPL VALUES ( 1, 'ZQF', 'ZFQLIN', '10.2.0.4', 'Oracle DB') on SQL::Statement ok 57 - prepare INSERT INTO APPL VALUES ( 2, 'YRA', 'YRA-UX', '10.2.0.2', 'Oracle DB') on SQL::Statement ok 58 - execute INSERT INTO APPL VALUES ( 2, 'YRA', 'YRA-UX', '10.2.0.2', 'Oracle DB') on SQL::Statement ok 59 - prepare INSERT INTO APPL VALUES ( 3, 'PRN1', 'PRN1-4.B2', '1.1.22', 'CUPS' ) on SQL::Statement ok 60 - execute INSERT INTO APPL VALUES ( 3, 'PRN1', 'PRN1-4.B2', '1.1.22', 'CUPS' ) on SQL::Statement ok 61 - prepare INSERT INTO APPL VALUES ( 4, 'PRN2', 'PRN2-4.B2', '1.1.22', 'CUPS' ) on SQL::Statement ok 62 - execute INSERT INTO APPL VALUES ( 4, 'PRN2', 'PRN2-4.B2', '1.1.22', 'CUPS' ) on SQL::Statement ok 63 - prepare INSERT INTO APPL VALUES ( 5, 'PRN1', 'PRN1-4.B1', '1.1.22', 'CUPS' ) on SQL::Statement ok 64 - execute INSERT INTO APPL VALUES ( 5, 'PRN1', 'PRN1-4.B1', '1.1.22', 'CUPS' ) on SQL::Statement ok 65 - prepare INSERT INTO APPL VALUES ( 7, 'PRN2', 'PRN2-4.B1', '1.1.22', 'CUPS' ) on SQL::Statement ok 66 - execute INSERT INTO APPL VALUES ( 7, 'PRN2', 'PRN2-4.B1', '1.1.22', 'CUPS' ) on SQL::Statement ok 67 - prepare INSERT INTO APPL VALUES ( 8, 'sql-stmt', 'SQL::Statement', '1.21', 'Project Web-Site') on SQL::Statement ok 68 - execute INSERT INTO APPL VALUES ( 8, 'sql-stmt', 'SQL::Statement', '1.21', 'Project Web-Site') on SQL::Statement ok 69 - prepare INSERT INTO APPL VALUES ( 9, 'cpan.org', 'http://www.cpan.org/', '1.0', 'Web-Site') on SQL::Statement ok 70 - execute INSERT INTO APPL VALUES ( 9, 'cpan.org', 'http://www.cpan.org/', '1.0', 'Web-Site') on SQL::Statement ok 71 - prepare INSERT INTO APPL VALUES (10, 'httpd', 'cpan-apache', '2.2.13', 'Web-Server') on SQL::Statement ok 72 - execute INSERT INTO APPL VALUES (10, 'httpd', 'cpan-apache', '2.2.13', 'Web-Server') on SQL::Statement ok 73 - prepare INSERT INTO APPL VALUES (11, 'cpan-mods', 'cpan-mods', '8.4.1', 'PostgreSQL DB') on SQL::Statement ok 74 - execute INSERT INTO APPL VALUES (11, 'cpan-mods', 'cpan-mods', '8.4.1', 'PostgreSQL DB') on SQL::Statement ok 75 - prepare INSERT INTO APPL VALUES (12, 'cpan-authors', 'cpan-authors', '8.4.1', 'PostgreSQL DB') on SQL::Statement ok 76 - execute INSERT INTO APPL VALUES (12, 'cpan-authors', 'cpan-authors', '8.4.1', 'PostgreSQL DB') on SQL::Statement ok 77 - prepare CREATE TEMP TABLE NODE (id INT, nodename CHAR, os CHAR, version CHAR) on SQL::Statement ok 78 - execute CREATE TEMP TABLE NODE (id INT, nodename CHAR, os CHAR, version CHAR) on SQL::Statement ok 79 - prepare INSERT INTO NODE VALUES ( 1, 'ernie', 'RHEL', '5.2') on SQL::Statement ok 80 - execute INSERT INTO NODE VALUES ( 1, 'ernie', 'RHEL', '5.2') on SQL::Statement ok 81 - prepare INSERT INTO NODE VALUES ( 2, 'bert', 'RHEL', '5.2') on SQL::Statement ok 82 - execute INSERT INTO NODE VALUES ( 2, 'bert', 'RHEL', '5.2') on SQL::Statement ok 83 - prepare INSERT INTO NODE VALUES ( 3, 'statler', 'FreeBSD', '7.2') on SQL::Statement ok 84 - execute INSERT INTO NODE VALUES ( 3, 'statler', 'FreeBSD', '7.2') on SQL::Statement ok 85 - prepare INSERT INTO NODE VALUES ( 4, 'waldorf', 'FreeBSD', '7.2') on SQL::Statement ok 86 - execute INSERT INTO NODE VALUES ( 4, 'waldorf', 'FreeBSD', '7.2') on SQL::Statement ok 87 - prepare INSERT INTO NODE VALUES ( 5, 'piggy', 'NetBSD', '5.0.2') on SQL::Statement ok 88 - execute INSERT INTO NODE VALUES ( 5, 'piggy', 'NetBSD', '5.0.2') on SQL::Statement ok 89 - prepare INSERT INTO NODE VALUES ( 6, 'kermit', 'NetBSD', '5.0.2') on SQL::Statement ok 90 - execute INSERT INTO NODE VALUES ( 6, 'kermit', 'NetBSD', '5.0.2') on SQL::Statement ok 91 - prepare INSERT INTO NODE VALUES ( 7, 'samson', 'NetBSD', '5.0.2') on SQL::Statement ok 92 - execute INSERT INTO NODE VALUES ( 7, 'samson', 'NetBSD', '5.0.2') on SQL::Statement ok 93 - prepare INSERT INTO NODE VALUES ( 8, 'tiffy', 'NetBSD', '5.0.2') on SQL::Statement ok 94 - execute INSERT INTO NODE VALUES ( 8, 'tiffy', 'NetBSD', '5.0.2') on SQL::Statement ok 95 - prepare INSERT INTO NODE VALUES ( 9, 'rowlf', 'Debian Lenny', '5.0') on SQL::Statement ok 96 - execute INSERT INTO NODE VALUES ( 9, 'rowlf', 'Debian Lenny', '5.0') on SQL::Statement ok 97 - prepare INSERT INTO NODE VALUES (10, 'fozzy', 'Debian Lenny', '5.0') on SQL::Statement ok 98 - execute INSERT INTO NODE VALUES (10, 'fozzy', 'Debian Lenny', '5.0') on SQL::Statement ok 99 - prepare CREATE TEMP TABLE PREC (id INT, appl_id INT, node_id INT, precedence INT) on SQL::Statement ok 100 - execute CREATE TEMP TABLE PREC (id INT, appl_id INT, node_id INT, precedence INT) on SQL::Statement ok 101 - prepare INSERT INTO PREC VALUES ( 1, 1, 1, 1) on SQL::Statement ok 102 - execute INSERT INTO PREC VALUES ( 1, 1, 1, 1) on SQL::Statement ok 103 - prepare INSERT INTO PREC VALUES ( 2, 1, 2, 2) on SQL::Statement ok 104 - execute INSERT INTO PREC VALUES ( 2, 1, 2, 2) on SQL::Statement ok 105 - prepare INSERT INTO PREC VALUES ( 3, 2, 2, 1) on SQL::Statement ok 106 - execute INSERT INTO PREC VALUES ( 3, 2, 2, 1) on SQL::Statement ok 107 - prepare INSERT INTO PREC VALUES ( 4, 2, 1, 2) on SQL::Statement ok 108 - execute INSERT INTO PREC VALUES ( 4, 2, 1, 2) on SQL::Statement ok 109 - prepare INSERT INTO PREC VALUES ( 5, 3, 5, 1) on SQL::Statement ok 110 - execute INSERT INTO PREC VALUES ( 5, 3, 5, 1) on SQL::Statement ok 111 - prepare INSERT INTO PREC VALUES ( 6, 3, 7, 2) on SQL::Statement ok 112 - execute INSERT INTO PREC VALUES ( 6, 3, 7, 2) on SQL::Statement ok 113 - prepare INSERT INTO PREC VALUES ( 7, 4, 6, 1) on SQL::Statement ok 114 - execute INSERT INTO PREC VALUES ( 7, 4, 6, 1) on SQL::Statement ok 115 - prepare INSERT INTO PREC VALUES ( 8, 4, 8, 2) on SQL::Statement ok 116 - execute INSERT INTO PREC VALUES ( 8, 4, 8, 2) on SQL::Statement ok 117 - prepare INSERT INTO PREC VALUES ( 9, 5, 7, 1) on SQL::Statement ok 118 - execute INSERT INTO PREC VALUES ( 9, 5, 7, 1) on SQL::Statement ok 119 - prepare INSERT INTO PREC VALUES (10, 5, 5, 2) on SQL::Statement ok 120 - execute INSERT INTO PREC VALUES (10, 5, 5, 2) on SQL::Statement ok 121 - prepare INSERT INTO PREC VALUES (11, 6, 8, 1) on SQL::Statement ok 122 - execute INSERT INTO PREC VALUES (11, 6, 8, 1) on SQL::Statement ok 123 - prepare INSERT INTO PREC VALUES (12, 7, 6, 2) on SQL::Statement ok 124 - execute INSERT INTO PREC VALUES (12, 7, 6, 2) on SQL::Statement ok 125 - prepare INSERT INTO PREC VALUES (13, 10, 9, 1) on SQL::Statement ok 126 - execute INSERT INTO PREC VALUES (13, 10, 9, 1) on SQL::Statement ok 127 - prepare INSERT INTO PREC VALUES (14, 10, 10, 1) on SQL::Statement ok 128 - execute INSERT INTO PREC VALUES (14, 10, 10, 1) on SQL::Statement ok 129 - prepare INSERT INTO PREC VALUES (15, 8, 9, 1) on SQL::Statement ok 130 - execute INSERT INTO PREC VALUES (15, 8, 9, 1) on SQL::Statement ok 131 - prepare INSERT INTO PREC VALUES (16, 8, 10, 1) on SQL::Statement ok 132 - execute INSERT INTO PREC VALUES (16, 8, 10, 1) on SQL::Statement ok 133 - prepare INSERT INTO PREC VALUES (17, 9, 9, 1) on SQL::Statement ok 134 - execute INSERT INTO PREC VALUES (17, 9, 9, 1) on SQL::Statement ok 135 - prepare INSERT INTO PREC VALUES (18, 9, 10, 1) on SQL::Statement ok 136 - execute INSERT INTO PREC VALUES (18, 9, 10, 1) on SQL::Statement ok 137 - prepare INSERT INTO PREC VALUES (19, 11, 3, 1) on SQL::Statement ok 138 - execute INSERT INTO PREC VALUES (19, 11, 3, 1) on SQL::Statement ok 139 - prepare INSERT INTO PREC VALUES (20, 11, 4, 2) on SQL::Statement ok 140 - execute INSERT INTO PREC VALUES (20, 11, 4, 2) on SQL::Statement ok 141 - prepare INSERT INTO PREC VALUES (21, 12, 4, 1) on SQL::Statement ok 142 - execute INSERT INTO PREC VALUES (21, 12, 4, 1) on SQL::Statement ok 143 - prepare INSERT INTO PREC VALUES (22, 12, 3, 2) on SQL::Statement ok 144 - execute INSERT INTO PREC VALUES (22, 12, 3, 2) on SQL::Statement ok 145 - prepare CREATE TEMP TABLE LANDSCAPE (id INT, landscapename CHAR) on SQL::Statement ok 146 - execute CREATE TEMP TABLE LANDSCAPE (id INT, landscapename CHAR) on SQL::Statement ok 147 - prepare INSERT INTO LANDSCAPE VALUES (1, 'Logistic') on SQL::Statement ok 148 - execute INSERT INTO LANDSCAPE VALUES (1, 'Logistic') on SQL::Statement ok 149 - prepare INSERT INTO LANDSCAPE VALUES (2, 'Infrastructure') on SQL::Statement ok 150 - execute INSERT INTO LANDSCAPE VALUES (2, 'Infrastructure') on SQL::Statement ok 151 - prepare INSERT INTO LANDSCAPE VALUES (3, 'CPAN') on SQL::Statement ok 152 - execute INSERT INTO LANDSCAPE VALUES (3, 'CPAN') on SQL::Statement ok 153 - prepare CREATE TEMP TABLE CONTACT (id INT, surname CHAR, familyname CHAR, phone CHAR, userid CHAR, mailaddr CHAR) on SQL::Statement ok 154 - execute CREATE TEMP TABLE CONTACT (id INT, surname CHAR, familyname CHAR, phone CHAR, userid CHAR, mailaddr CHAR) on SQL::Statement ok 155 - prepare INSERT INTO CONTACT VALUES ( 1, 'Hans Peter', 'Mueller', '12345', 'HPMUE', 'hp-mueller@here.com') on SQL::Statement ok 156 - execute INSERT INTO CONTACT VALUES ( 1, 'Hans Peter', 'Mueller', '12345', 'HPMUE', 'hp-mueller@here.com') on SQL::Statement ok 157 - prepare INSERT INTO CONTACT VALUES ( 2, 'Knut', 'Inge', '54321', 'KINGE', 'k-inge@here.com') on SQL::Statement ok 158 - execute INSERT INTO CONTACT VALUES ( 2, 'Knut', 'Inge', '54321', 'KINGE', 'k-inge@here.com') on SQL::Statement ok 159 - prepare INSERT INTO CONTACT VALUES ( 3, 'Lola', 'Nguyen', '+1-123-45678-90', 'LNYUG', 'lola.ngyuen@customer.com') on SQL::Statement ok 160 - execute INSERT INTO CONTACT VALUES ( 3, 'Lola', 'Nguyen', '+1-123-45678-90', 'LNYUG', 'lola.ngyuen@customer.com') on SQL::Statement ok 161 - prepare INSERT INTO CONTACT VALUES ( 4, 'Helge', 'Brunft', '+41-123-45678-09', 'HBRUN', 'helge.brunft@external-dc.at') on SQL::Statement ok 162 - execute INSERT INTO CONTACT VALUES ( 4, 'Helge', 'Brunft', '+41-123-45678-09', 'HBRUN', 'helge.brunft@external-dc.at') on SQL::Statement ok 163 - prepare CREATE TEMP TABLE NM_LANDSCAPE (id INT, ls_id INT, obj_id INT, obj_type INT) on SQL::Statement ok 164 - execute CREATE TEMP TABLE NM_LANDSCAPE (id INT, ls_id INT, obj_id INT, obj_type INT) on SQL::Statement ok 165 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 1, 1, 1, 2) on SQL::Statement ok 166 - execute INSERT INTO NM_LANDSCAPE VALUES ( 1, 1, 1, 2) on SQL::Statement ok 167 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 2, 1, 2, 2) on SQL::Statement ok 168 - execute INSERT INTO NM_LANDSCAPE VALUES ( 2, 1, 2, 2) on SQL::Statement ok 169 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 3, 3, 3, 2) on SQL::Statement ok 170 - execute INSERT INTO NM_LANDSCAPE VALUES ( 3, 3, 3, 2) on SQL::Statement ok 171 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 4, 3, 4, 2) on SQL::Statement ok 172 - execute INSERT INTO NM_LANDSCAPE VALUES ( 4, 3, 4, 2) on SQL::Statement ok 173 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 5, 2, 5, 2) on SQL::Statement ok 174 - execute INSERT INTO NM_LANDSCAPE VALUES ( 5, 2, 5, 2) on SQL::Statement ok 175 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 6, 2, 6, 2) on SQL::Statement ok 176 - execute INSERT INTO NM_LANDSCAPE VALUES ( 6, 2, 6, 2) on SQL::Statement ok 177 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 7, 2, 7, 2) on SQL::Statement ok 178 - execute INSERT INTO NM_LANDSCAPE VALUES ( 7, 2, 7, 2) on SQL::Statement ok 179 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 8, 2, 8, 2) on SQL::Statement ok 180 - execute INSERT INTO NM_LANDSCAPE VALUES ( 8, 2, 8, 2) on SQL::Statement ok 181 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 9, 3, 9, 2) on SQL::Statement ok 182 - execute INSERT INTO NM_LANDSCAPE VALUES ( 9, 3, 9, 2) on SQL::Statement ok 183 - prepare INSERT INTO NM_LANDSCAPE VALUES (10, 3,10, 2) on SQL::Statement ok 184 - execute INSERT INTO NM_LANDSCAPE VALUES (10, 3,10, 2) on SQL::Statement ok 185 - prepare INSERT INTO NM_LANDSCAPE VALUES (11, 1, 1, 1) on SQL::Statement ok 186 - execute INSERT INTO NM_LANDSCAPE VALUES (11, 1, 1, 1) on SQL::Statement ok 187 - prepare INSERT INTO NM_LANDSCAPE VALUES (12, 2, 2, 1) on SQL::Statement ok 188 - execute INSERT INTO NM_LANDSCAPE VALUES (12, 2, 2, 1) on SQL::Statement ok 189 - prepare INSERT INTO NM_LANDSCAPE VALUES (13, 2, 2, 3) on SQL::Statement ok 190 - execute INSERT INTO NM_LANDSCAPE VALUES (13, 2, 2, 3) on SQL::Statement ok 191 - prepare INSERT INTO NM_LANDSCAPE VALUES (14, 3, 1, 3) on SQL::Statement ok 192 - execute INSERT INTO NM_LANDSCAPE VALUES (14, 3, 1, 3) on SQL::Statement ok 193 - prepare CREATE TEMP TABLE APPL_CONTACT (id INT, contact_id INT, appl_id INT, contact_type CHAR) on SQL::Statement ok 194 - execute CREATE TEMP TABLE APPL_CONTACT (id INT, contact_id INT, appl_id INT, contact_type CHAR) on SQL::Statement ok 195 - prepare INSERT INTO APPL_CONTACT VALUES (1, 3, 1, 'OWNER') on SQL::Statement ok 196 - execute INSERT INTO APPL_CONTACT VALUES (1, 3, 1, 'OWNER') on SQL::Statement ok 197 - prepare INSERT INTO APPL_CONTACT VALUES (2, 3, 2, 'OWNER') on SQL::Statement ok 198 - execute INSERT INTO APPL_CONTACT VALUES (2, 3, 2, 'OWNER') on SQL::Statement ok 199 - prepare INSERT INTO APPL_CONTACT VALUES (3, 4, 3, 'ADMIN') on SQL::Statement ok 200 - execute INSERT INTO APPL_CONTACT VALUES (3, 4, 3, 'ADMIN') on SQL::Statement ok 201 - prepare INSERT INTO APPL_CONTACT VALUES (4, 4, 4, 'ADMIN') on SQL::Statement ok 202 - execute INSERT INTO APPL_CONTACT VALUES (4, 4, 4, 'ADMIN') on SQL::Statement ok 203 - prepare INSERT INTO APPL_CONTACT VALUES (5, 4, 5, 'ADMIN') on SQL::Statement ok 204 - execute INSERT INTO APPL_CONTACT VALUES (5, 4, 5, 'ADMIN') on SQL::Statement ok 205 - prepare INSERT INTO APPL_CONTACT VALUES (6, 4, 6, 'ADMIN') on SQL::Statement ok 206 - execute INSERT INTO APPL_CONTACT VALUES (6, 4, 6, 'ADMIN') on SQL::Statement ok 207 - prepare SELECT pname,sname FROM Prof NATURAL JOIN Subject using SQL::Statement ok 208 - execute SELECT pname,sname FROM Prof NATURAL JOIN Subject using SQL::Statement ok 209 - NATURAL JOIN - with named columns in select list ok 210 - prepare SELECT * FROM Prof NATURAL JOIN Subject using SQL::Statement ok 211 - execute SELECT * FROM Prof NATURAL JOIN Subject using SQL::Statement ok 212 - NATURAL JOIN - with select list = * ok 213 - prepare SELECT UPPER(pname) AS P,Prof.pid,pname,sname FROM Prof NATURAL JOIN Subject using SQL::Statement ok 214 - execute SELECT UPPER(pname) AS P,Prof.pid,pname,sname FROM Prof NATURAL JOIN Subject using SQL::Statement ok 215 - NATURAL JOIN - with computed columns ok 216 - prepare SELECT UPPER(pname) AS P,pid,pname,sname FROM Prof NATURAL JOIN Subject using SQL::Statement ok 217 - execute SELECT UPPER(pname) AS P,pid,pname,sname FROM Prof NATURAL JOIN Subject using SQL::Statement ok 218 - NATURAL JOIN - with no specifier on join column ok 219 - prepare SELECT UPPER(pname) AS P,pid,pname,sname FROM Prof JOIN Subject using (pid) using SQL::Statement ok 220 - execute SELECT UPPER(pname) AS P,pid,pname,sname FROM Prof JOIN Subject using (pid) using SQL::Statement ok 221 - INNER JOIN - with no specifier on join column ok 222 - prepare SELECT * FROM Prof LEFT JOIN Subject USING(pid) using SQL::Statement ok 223 - execute SELECT * FROM Prof LEFT JOIN Subject USING(pid) using SQL::Statement ok 224 - LEFT JOIN ok 225 - prepare SELECT pid,pname,sname FROM Prof LEFT JOIN Subject USING(pid) using SQL::Statement ok 226 - execute SELECT pid,pname,sname FROM Prof LEFT JOIN Subject USING(pid) using SQL::Statement ok 227 - LEFT JOIN - enumerated columns ok 228 - prepare SELECT subject.pid,pname,sname FROM Prof LEFT JOIN Subject USING(pid) using SQL::Statement ok 229 - execute SELECT subject.pid,pname,sname FROM Prof LEFT JOIN Subject USING(pid) using SQL::Statement ok 230 - LEFT JOIN - perversely intentionally mis-enumerated columns ok 231 - prepare SELECT subject.pid, pname, sname FROM prof LEFT JOIN subject USING(pid) using SQL::Statement ok 232 - execute SELECT subject.pid, pname, sname FROM prof LEFT JOIN subject USING(pid) using SQL::Statement ok 233 - LEFT JOIN - lower case keywords ok 234 - prepare SELECT * FROM Prof RIGHT JOIN Subject USING(pid) using SQL::Statement ok 235 - execute SELECT * FROM Prof RIGHT JOIN Subject USING(pid) using SQL::Statement ok 236 - RIGHT JOIN ok 237 - prepare SELECT pid,sname,pname FROM Prof RIGHT JOIN Subject USING(pid) using SQL::Statement ok 238 - execute SELECT pid,sname,pname FROM Prof RIGHT JOIN Subject USING(pid) using SQL::Statement ok 239 - RIGHT JOIN - enumerated columns ok 240 - prepare SELECT * FROM Prof FULL JOIN Subject USING(pid) using SQL::Statement ok 241 - execute SELECT * FROM Prof FULL JOIN Subject USING(pid) using SQL::Statement ok 242 - FULL JOIN ok 243 - prepare SELECT * FROM Prof AS P,Subject AS S WHERE P.pid=S.pid using SQL::Statement ok 244 - execute SELECT * FROM Prof AS P,Subject AS S WHERE P.pid=S.pid using SQL::Statement ok 245 - IMPLICIT JOIN - two tables ok 246 - prepare SELECT * # FROM Prof AS P,Subject AS S,Room AS R # WHERE P.pid=S.pid # AND P.pid=R.pid using SQL::Statement ok 247 - execute SELECT * # FROM Prof AS P,Subject AS S,Room AS R # WHERE P.pid=S.pid # AND P.pid=R.pid using SQL::Statement ok 248 - IMPLICIT JOIN - three tables ok 249 - prepare SELECT * FROM author NATURAL JOIN book using SQL::Statement ok 250 - execute SELECT * FROM author NATURAL JOIN book using SQL::Statement ok 251 - Columns in NATURAL JOIN - on unique id's with select list = * ok 252 - NATURAL JOIN - on unique id's with select list = * ok 253 - prepare SELECT * FROM t1 CROSS JOIN t2 using SQL::Statement ok 254 - execute SELECT * FROM t1 CROSS JOIN t2 using SQL::Statement ok 255 - Columns in CROSS JOIN with select list = * ok 256 - CROSS JOIN with select list = * ok 257 - prepare SELECT * FROM t1 INNER JOIN t2 ON t1.num = t2.num using SQL::Statement ok 258 - execute SELECT * FROM t1 INNER JOIN t2 ON t1.num = t2.num using SQL::Statement ok 259 - Columns in INNER JOIN with select list = * ok 260 - INNER JOIN with select list = * ok 261 - prepare SELECT * FROM t1 INNER JOIN t2 USING (num) using SQL::Statement ok 262 - execute SELECT * FROM t1 INNER JOIN t2 USING (num) using SQL::Statement ok 263 - Columns in INNER JOINS (USING) with select list = * ok 264 - INNER JOINS (USING) with select list = * ok 265 - prepare SELECT * FROM t1 NATURAL INNER JOIN t2 using SQL::Statement ok 266 - execute SELECT * FROM t1 NATURAL INNER JOIN t2 using SQL::Statement ok 267 - Columns in INNER JOINS (NATURAL) with select list = * ok 268 - INNER JOINS (NATURAL) with select list = * ok 269 - prepare SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num using SQL::Statement ok 270 - execute SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num using SQL::Statement ok 271 - Columns in LEFT JOINS (using ON condition) with select list = * ok 272 - LEFT JOINS (using ON condition) with select list = * ok 273 - prepare SELECT * FROM t1 LEFT JOIN t2 USING (num) using SQL::Statement ok 274 - execute SELECT * FROM t1 LEFT JOIN t2 USING (num) using SQL::Statement ok 275 - Columns in LEFT JOINS (USING (num) condition) with select list = * ok 276 - LEFT JOINS (USING (num) condition) with select list = * ok 277 - prepare SELECT * FROM t1 RIGHT JOIN t2 ON t1.num = t2.num using SQL::Statement ok 278 - execute SELECT * FROM t1 RIGHT JOIN t2 ON t1.num = t2.num using SQL::Statement ok 279 - Columns in Right Joins (using ON condition) with select list = * ok 280 - Right Joins (using ON condition) with select list = * ok 281 - prepare SELECT * FROM t2 LEFT JOIN t1 ON t1.num = t2.num using SQL::Statement ok 282 - execute SELECT * FROM t2 LEFT JOIN t1 ON t1.num = t2.num using SQL::Statement ok 283 - Columns in Left Joins (reverse former Right Join) with select list = * ok 284 - Left Joins (reverse former Right Join) with select list = * ok 285 - prepare SELECT * FROM t1 FULL JOIN t2 ON t1.num = t2.num using SQL::Statement ok 286 - execute SELECT * FROM t1 FULL JOIN t2 ON t1.num = t2.num using SQL::Statement ok 287 - Columns in Full Joins (using ON condition) with select list = * ok 288 - Full Joins (using ON condition) with select list = * # break here ok 289 - prepare SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num AND t2.wert = 'xxx' using SQL::Statement # TODO Analyze ok 290 - execute SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num AND t2.wert = 'xxx' using SQL::Statement # TODO Analyze ok 291 - Columns in Left Joins (using ON t1.num = t2.num AND t2.wert = "xxx") with select list = * # TODO Analyze not ok 292 - Left Joins (using ON t1.num = t2.num AND t2.wert = "xxx") with select list = * # TODO Analyze # Failed (TODO) test 'Left Joins (using ON t1.num = t2.num AND t2.wert = "xxx") with select list = *' # at t/08join.t line 675. # Structures begin differing at: # $got->[2][2] = '3' # $expected->[2][2] = undef # break here ok 293 - prepare SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num WHERE (t2.wert = 'xxx' OR t2.wert IS NULL) using SQL::Statement # TODO Analyze ok 294 - execute SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num WHERE (t2.wert = 'xxx' OR t2.wert IS NULL) using SQL::Statement # TODO Analyze ok 295 - Columns in Left Joins (using ON t1.num = t2.num WHERE (t2.wert = "xxx" OR t2.wert IS NULL)) with select list = * # TODO Analyze not ok 296 - Left Joins (using ON t1.num = t2.num WHERE (t2.wert = "xxx" OR t2.wert IS NULL)) with select list = * # TODO Analyze # Failed (TODO) test 'Left Joins (using ON t1.num = t2.num WHERE (t2.wert = "xxx" OR t2.wert IS NULL)) with select list = *' # at t/08join.t line 675. # Structures begin differing at: # $got->[2] = Does not exist # $expected->[2] = ARRAY(0x100ce3678) ok 297 - prepare SELECT applname, appluniq, version, nodename # FROM APPL, PREC, NODE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id using SQL::Statement ok 298 - execute SELECT applname, appluniq, version, nodename # FROM APPL, PREC, NODE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id using SQL::Statement ok 299 - DEFAULT INNER (1) with named columns ok 300 - prepare SELECT applname, appluniq, version, landscapename, nodename # FROM APPL, PREC, NODE, LANDSCAPE, NM_LANDSCAPE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND NM_LANDSCAPE.obj_id=APPL.id # AND NM_LANDSCAPE.obj_type=1 # AND NM_LANDSCAPE.ls_id=LANDSCAPE.id using SQL::Statement ok 301 - execute SELECT applname, appluniq, version, landscapename, nodename # FROM APPL, PREC, NODE, LANDSCAPE, NM_LANDSCAPE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND NM_LANDSCAPE.obj_id=APPL.id # AND NM_LANDSCAPE.obj_type=1 # AND NM_LANDSCAPE.ls_id=LANDSCAPE.id using SQL::Statement ok 302 - DEFAULT INNER (2) with named columns ok 303 - prepare SELECT applname, appluniq, version, surname, familyname, phone, nodename # FROM APPL, PREC, NODE, CONTACT, APPL_CONTACT # WHERE appl_type='CUPS' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND APPL_CONTACT.appl_id=APPL.id # AND APPL_CONTACT.contact_id=CONTACT.id # AND PREC.PRECEDENCE=1 # ORDER BY appluniq DESC, applname ASC using SQL::Statement ok 304 - execute SELECT applname, appluniq, version, surname, familyname, phone, nodename # FROM APPL, PREC, NODE, CONTACT, APPL_CONTACT # WHERE appl_type='CUPS' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND APPL_CONTACT.appl_id=APPL.id # AND APPL_CONTACT.contact_id=CONTACT.id # AND PREC.PRECEDENCE=1 # ORDER BY appluniq DESC, applname ASC using SQL::Statement ok 305 - DEFAULT INNER (3) with named columns ok 306 - prepare SELECT DISTINCT applname, appluniq, version, surname, familyname, phone, nodename # FROM APPL, PREC, NODE, CONTACT, APPL_CONTACT # WHERE appl_type='CUPS' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND APPL_CONTACT.appl_id=APPL.id # AND APPL_CONTACT.contact_id=CONTACT.id # ORDER BY applname, appluniq, nodename using SQL::Statement ok 307 - execute SELECT DISTINCT applname, appluniq, version, surname, familyname, phone, nodename # FROM APPL, PREC, NODE, CONTACT, APPL_CONTACT # WHERE appl_type='CUPS' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND APPL_CONTACT.appl_id=APPL.id # AND APPL_CONTACT.contact_id=CONTACT.id # ORDER BY applname, appluniq, nodename using SQL::Statement ok 308 - DEFAULT INNER (4) with named columns ok 309 - prepare SELECT CONCAT('[% NOW %]') AS "timestamp", applname, appluniq, version, nodename # FROM APPL, PREC, NODE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id using SQL::Statement ok 310 - execute SELECT CONCAT('[% NOW %]') AS "timestamp", applname, appluniq, version, nodename # FROM APPL, PREC, NODE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id using SQL::Statement ok 311 - DEFAULT INNER (5) with named columns # break here ok 312 - prepare SELECT pname, sname, rname # FROM Prof p # JOIN Subject s # ON p.pid = s.pid # JOIN Room r # ON p.pid = r.pid # using SQL::Statement # TODO Not supported yet! ok 313 - execute SELECT pname, sname, rname # FROM Prof p # JOIN Subject s # ON p.pid = s.pid # JOIN Room r # ON p.pid = r.pid # using SQL::Statement fails # TODO Not supported yet! ok 314 - Complex INNER JOIN # TODO Not supported yet! # break here ok 315 - prepare SELECT pname, sname, rname # FROM Prof p # JOIN Subject s USING (pid) # JOIN Room r USING (pid) # using SQL::Statement fails # TODO Not supported yet! ok 316 - Complex INNER JOIN (using) # TODO Not supported yet! # break here ok 317 - prepare SELECT pname, sname, rname # FROM Prof NATURAL JOIN Subject NATURAL JOIN Room # using SQL::Statement fails # TODO Not supported yet! ok 318 - Complex NATURAL JOIN # TODO Not supported yet! # break here ok 319 - prepare SELECT pname, sname, rname # FROM Prof p # LEFT JOIN Subject s # ON p.pid = s.pid # LEFT JOIN Room r # ON p.pid = r.pid # using SQL::Statement # TODO Not supported yet! ok 320 - execute SELECT pname, sname, rname # FROM Prof p # LEFT JOIN Subject s # ON p.pid = s.pid # LEFT JOIN Room r # ON p.pid = r.pid # using SQL::Statement fails # TODO Not supported yet! ok 321 - Complex LEFT JOIN # TODO Not supported yet! # Running tests for DBD::CSV ok 322 - prepare CREATE TABLE Prof (pname CHAR, pid INT) on DBD::CSV ok 323 - execute CREATE TABLE Prof (pname CHAR, pid INT) on DBD::CSV ok 324 - prepare INSERT INTO Prof VALUES ('Sue', 1) on DBD::CSV ok 325 - execute INSERT INTO Prof VALUES ('Sue', 1) on DBD::CSV ok 326 - prepare INSERT INTO Prof VALUES ('Bob', 2) on DBD::CSV ok 327 - execute INSERT INTO Prof VALUES ('Bob', 2) on DBD::CSV ok 328 - prepare INSERT INTO Prof VALUES ('Tom', 3) on DBD::CSV ok 329 - execute INSERT INTO Prof VALUES ('Tom', 3) on DBD::CSV ok 330 - prepare CREATE TABLE Subject (sname CHAR, pid INT) on DBD::CSV ok 331 - execute CREATE TABLE Subject (sname CHAR, pid INT) on DBD::CSV ok 332 - prepare INSERT INTO Subject VALUES ('Chem', 1) on DBD::CSV ok 333 - execute INSERT INTO Subject VALUES ('Chem', 1) on DBD::CSV ok 334 - prepare INSERT INTO Subject VALUES ('Bio', 2) on DBD::CSV ok 335 - execute INSERT INTO Subject VALUES ('Bio', 2) on DBD::CSV ok 336 - prepare INSERT INTO Subject VALUES ('Math', 2) on DBD::CSV ok 337 - execute INSERT INTO Subject VALUES ('Math', 2) on DBD::CSV ok 338 - prepare INSERT INTO Subject VALUES ('English', 4) on DBD::CSV ok 339 - execute INSERT INTO Subject VALUES ('English', 4) on DBD::CSV ok 340 - prepare CREATE TABLE Room (rname CHAR, pid INT) on DBD::CSV ok 341 - execute CREATE TABLE Room (rname CHAR, pid INT) on DBD::CSV ok 342 - prepare INSERT INTO Room VALUES ('1C', 1) on DBD::CSV ok 343 - execute INSERT INTO Room VALUES ('1C', 1) on DBD::CSV ok 344 - prepare INSERT INTO Room VALUES ('2B', 2) on DBD::CSV ok 345 - execute INSERT INTO Room VALUES ('2B', 2) on DBD::CSV ok 346 - prepare CREATE TABLE author (author_name CHAR, author_id INT) on DBD::CSV ok 347 - execute CREATE TABLE author (author_name CHAR, author_id INT) on DBD::CSV ok 348 - prepare INSERT INTO author VALUES ('Neal Stephenson',1) on DBD::CSV ok 349 - execute INSERT INTO author VALUES ('Neal Stephenson',1) on DBD::CSV ok 350 - prepare INSERT INTO author VALUES ('Vernor Vinge',2) on DBD::CSV ok 351 - execute INSERT INTO author VALUES ('Vernor Vinge',2) on DBD::CSV ok 352 - prepare CREATE TABLE book (book_title CHAR, author_id INT) on DBD::CSV ok 353 - execute CREATE TABLE book (book_title CHAR, author_id INT) on DBD::CSV ok 354 - prepare INSERT INTO book VALUES ('Cryptonomicon',1) on DBD::CSV ok 355 - execute INSERT INTO book VALUES ('Cryptonomicon',1) on DBD::CSV ok 356 - prepare INSERT INTO book VALUES ('Dahlgren',3) on DBD::CSV ok 357 - execute INSERT INTO book VALUES ('Dahlgren',3) on DBD::CSV ok 358 - prepare CREATE TABLE t1 (num INT, name CHAR) on DBD::CSV ok 359 - execute CREATE TABLE t1 (num INT, name CHAR) on DBD::CSV ok 360 - prepare INSERT INTO t1 VALUES (1,'a') on DBD::CSV ok 361 - execute INSERT INTO t1 VALUES (1,'a') on DBD::CSV ok 362 - prepare INSERT INTO t1 VALUES (2,'b') on DBD::CSV ok 363 - execute INSERT INTO t1 VALUES (2,'b') on DBD::CSV ok 364 - prepare INSERT INTO t1 VALUES (3,'c') on DBD::CSV ok 365 - execute INSERT INTO t1 VALUES (3,'c') on DBD::CSV ok 366 - prepare CREATE TABLE t2 (num INT, wert CHAR) on DBD::CSV ok 367 - execute CREATE TABLE t2 (num INT, wert CHAR) on DBD::CSV ok 368 - prepare INSERT INTO t2 VALUES (1,'xxx') on DBD::CSV ok 369 - execute INSERT INTO t2 VALUES (1,'xxx') on DBD::CSV ok 370 - prepare INSERT INTO t2 VALUES (3,'yyy') on DBD::CSV ok 371 - execute INSERT INTO t2 VALUES (3,'yyy') on DBD::CSV ok 372 - prepare INSERT INTO t2 VALUES (5,'zzz') on DBD::CSV ok 373 - execute INSERT INTO t2 VALUES (5,'zzz') on DBD::CSV ok 374 - prepare CREATE TABLE APPL (id INT, applname CHAR, appluniq CHAR, version CHAR, appl_type CHAR) on DBD::CSV ok 375 - execute CREATE TABLE APPL (id INT, applname CHAR, appluniq CHAR, version CHAR, appl_type CHAR) on DBD::CSV ok 376 - prepare INSERT INTO APPL VALUES ( 1, 'ZQF', 'ZFQLIN', '10.2.0.4', 'Oracle DB') on DBD::CSV ok 377 - execute INSERT INTO APPL VALUES ( 1, 'ZQF', 'ZFQLIN', '10.2.0.4', 'Oracle DB') on DBD::CSV ok 378 - prepare INSERT INTO APPL VALUES ( 2, 'YRA', 'YRA-UX', '10.2.0.2', 'Oracle DB') on DBD::CSV ok 379 - execute INSERT INTO APPL VALUES ( 2, 'YRA', 'YRA-UX', '10.2.0.2', 'Oracle DB') on DBD::CSV ok 380 - prepare INSERT INTO APPL VALUES ( 3, 'PRN1', 'PRN1-4.B2', '1.1.22', 'CUPS' ) on DBD::CSV ok 381 - execute INSERT INTO APPL VALUES ( 3, 'PRN1', 'PRN1-4.B2', '1.1.22', 'CUPS' ) on DBD::CSV ok 382 - prepare INSERT INTO APPL VALUES ( 4, 'PRN2', 'PRN2-4.B2', '1.1.22', 'CUPS' ) on DBD::CSV ok 383 - execute INSERT INTO APPL VALUES ( 4, 'PRN2', 'PRN2-4.B2', '1.1.22', 'CUPS' ) on DBD::CSV ok 384 - prepare INSERT INTO APPL VALUES ( 5, 'PRN1', 'PRN1-4.B1', '1.1.22', 'CUPS' ) on DBD::CSV ok 385 - execute INSERT INTO APPL VALUES ( 5, 'PRN1', 'PRN1-4.B1', '1.1.22', 'CUPS' ) on DBD::CSV ok 386 - prepare INSERT INTO APPL VALUES ( 7, 'PRN2', 'PRN2-4.B1', '1.1.22', 'CUPS' ) on DBD::CSV ok 387 - execute INSERT INTO APPL VALUES ( 7, 'PRN2', 'PRN2-4.B1', '1.1.22', 'CUPS' ) on DBD::CSV ok 388 - prepare INSERT INTO APPL VALUES ( 8, 'sql-stmt', 'SQL::Statement', '1.21', 'Project Web-Site') on DBD::CSV ok 389 - execute INSERT INTO APPL VALUES ( 8, 'sql-stmt', 'SQL::Statement', '1.21', 'Project Web-Site') on DBD::CSV ok 390 - prepare INSERT INTO APPL VALUES ( 9, 'cpan.org', 'http://www.cpan.org/', '1.0', 'Web-Site') on DBD::CSV ok 391 - execute INSERT INTO APPL VALUES ( 9, 'cpan.org', 'http://www.cpan.org/', '1.0', 'Web-Site') on DBD::CSV ok 392 - prepare INSERT INTO APPL VALUES (10, 'httpd', 'cpan-apache', '2.2.13', 'Web-Server') on DBD::CSV ok 393 - execute INSERT INTO APPL VALUES (10, 'httpd', 'cpan-apache', '2.2.13', 'Web-Server') on DBD::CSV ok 394 - prepare INSERT INTO APPL VALUES (11, 'cpan-mods', 'cpan-mods', '8.4.1', 'PostgreSQL DB') on DBD::CSV ok 395 - execute INSERT INTO APPL VALUES (11, 'cpan-mods', 'cpan-mods', '8.4.1', 'PostgreSQL DB') on DBD::CSV ok 396 - prepare INSERT INTO APPL VALUES (12, 'cpan-authors', 'cpan-authors', '8.4.1', 'PostgreSQL DB') on DBD::CSV ok 397 - execute INSERT INTO APPL VALUES (12, 'cpan-authors', 'cpan-authors', '8.4.1', 'PostgreSQL DB') on DBD::CSV ok 398 - prepare CREATE TABLE NODE (id INT, nodename CHAR, os CHAR, version CHAR) on DBD::CSV ok 399 - execute CREATE TABLE NODE (id INT, nodename CHAR, os CHAR, version CHAR) on DBD::CSV ok 400 - prepare INSERT INTO NODE VALUES ( 1, 'ernie', 'RHEL', '5.2') on DBD::CSV ok 401 - execute INSERT INTO NODE VALUES ( 1, 'ernie', 'RHEL', '5.2') on DBD::CSV ok 402 - prepare INSERT INTO NODE VALUES ( 2, 'bert', 'RHEL', '5.2') on DBD::CSV ok 403 - execute INSERT INTO NODE VALUES ( 2, 'bert', 'RHEL', '5.2') on DBD::CSV ok 404 - prepare INSERT INTO NODE VALUES ( 3, 'statler', 'FreeBSD', '7.2') on DBD::CSV ok 405 - execute INSERT INTO NODE VALUES ( 3, 'statler', 'FreeBSD', '7.2') on DBD::CSV ok 406 - prepare INSERT INTO NODE VALUES ( 4, 'waldorf', 'FreeBSD', '7.2') on DBD::CSV ok 407 - execute INSERT INTO NODE VALUES ( 4, 'waldorf', 'FreeBSD', '7.2') on DBD::CSV ok 408 - prepare INSERT INTO NODE VALUES ( 5, 'piggy', 'NetBSD', '5.0.2') on DBD::CSV ok 409 - execute INSERT INTO NODE VALUES ( 5, 'piggy', 'NetBSD', '5.0.2') on DBD::CSV ok 410 - prepare INSERT INTO NODE VALUES ( 6, 'kermit', 'NetBSD', '5.0.2') on DBD::CSV ok 411 - execute INSERT INTO NODE VALUES ( 6, 'kermit', 'NetBSD', '5.0.2') on DBD::CSV ok 412 - prepare INSERT INTO NODE VALUES ( 7, 'samson', 'NetBSD', '5.0.2') on DBD::CSV ok 413 - execute INSERT INTO NODE VALUES ( 7, 'samson', 'NetBSD', '5.0.2') on DBD::CSV ok 414 - prepare INSERT INTO NODE VALUES ( 8, 'tiffy', 'NetBSD', '5.0.2') on DBD::CSV ok 415 - execute INSERT INTO NODE VALUES ( 8, 'tiffy', 'NetBSD', '5.0.2') on DBD::CSV ok 416 - prepare INSERT INTO NODE VALUES ( 9, 'rowlf', 'Debian Lenny', '5.0') on DBD::CSV ok 417 - execute INSERT INTO NODE VALUES ( 9, 'rowlf', 'Debian Lenny', '5.0') on DBD::CSV ok 418 - prepare INSERT INTO NODE VALUES (10, 'fozzy', 'Debian Lenny', '5.0') on DBD::CSV ok 419 - execute INSERT INTO NODE VALUES (10, 'fozzy', 'Debian Lenny', '5.0') on DBD::CSV ok 420 - prepare CREATE TABLE PREC (id INT, appl_id INT, node_id INT, precedence INT) on DBD::CSV ok 421 - execute CREATE TABLE PREC (id INT, appl_id INT, node_id INT, precedence INT) on DBD::CSV ok 422 - prepare INSERT INTO PREC VALUES ( 1, 1, 1, 1) on DBD::CSV ok 423 - execute INSERT INTO PREC VALUES ( 1, 1, 1, 1) on DBD::CSV ok 424 - prepare INSERT INTO PREC VALUES ( 2, 1, 2, 2) on DBD::CSV ok 425 - execute INSERT INTO PREC VALUES ( 2, 1, 2, 2) on DBD::CSV ok 426 - prepare INSERT INTO PREC VALUES ( 3, 2, 2, 1) on DBD::CSV ok 427 - execute INSERT INTO PREC VALUES ( 3, 2, 2, 1) on DBD::CSV ok 428 - prepare INSERT INTO PREC VALUES ( 4, 2, 1, 2) on DBD::CSV ok 429 - execute INSERT INTO PREC VALUES ( 4, 2, 1, 2) on DBD::CSV ok 430 - prepare INSERT INTO PREC VALUES ( 5, 3, 5, 1) on DBD::CSV ok 431 - execute INSERT INTO PREC VALUES ( 5, 3, 5, 1) on DBD::CSV ok 432 - prepare INSERT INTO PREC VALUES ( 6, 3, 7, 2) on DBD::CSV ok 433 - execute INSERT INTO PREC VALUES ( 6, 3, 7, 2) on DBD::CSV ok 434 - prepare INSERT INTO PREC VALUES ( 7, 4, 6, 1) on DBD::CSV ok 435 - execute INSERT INTO PREC VALUES ( 7, 4, 6, 1) on DBD::CSV ok 436 - prepare INSERT INTO PREC VALUES ( 8, 4, 8, 2) on DBD::CSV ok 437 - execute INSERT INTO PREC VALUES ( 8, 4, 8, 2) on DBD::CSV ok 438 - prepare INSERT INTO PREC VALUES ( 9, 5, 7, 1) on DBD::CSV ok 439 - execute INSERT INTO PREC VALUES ( 9, 5, 7, 1) on DBD::CSV ok 440 - prepare INSERT INTO PREC VALUES (10, 5, 5, 2) on DBD::CSV ok 441 - execute INSERT INTO PREC VALUES (10, 5, 5, 2) on DBD::CSV ok 442 - prepare INSERT INTO PREC VALUES (11, 6, 8, 1) on DBD::CSV ok 443 - execute INSERT INTO PREC VALUES (11, 6, 8, 1) on DBD::CSV ok 444 - prepare INSERT INTO PREC VALUES (12, 7, 6, 2) on DBD::CSV ok 445 - execute INSERT INTO PREC VALUES (12, 7, 6, 2) on DBD::CSV ok 446 - prepare INSERT INTO PREC VALUES (13, 10, 9, 1) on DBD::CSV ok 447 - execute INSERT INTO PREC VALUES (13, 10, 9, 1) on DBD::CSV ok 448 - prepare INSERT INTO PREC VALUES (14, 10, 10, 1) on DBD::CSV ok 449 - execute INSERT INTO PREC VALUES (14, 10, 10, 1) on DBD::CSV ok 450 - prepare INSERT INTO PREC VALUES (15, 8, 9, 1) on DBD::CSV ok 451 - execute INSERT INTO PREC VALUES (15, 8, 9, 1) on DBD::CSV ok 452 - prepare INSERT INTO PREC VALUES (16, 8, 10, 1) on DBD::CSV ok 453 - execute INSERT INTO PREC VALUES (16, 8, 10, 1) on DBD::CSV ok 454 - prepare INSERT INTO PREC VALUES (17, 9, 9, 1) on DBD::CSV ok 455 - execute INSERT INTO PREC VALUES (17, 9, 9, 1) on DBD::CSV ok 456 - prepare INSERT INTO PREC VALUES (18, 9, 10, 1) on DBD::CSV ok 457 - execute INSERT INTO PREC VALUES (18, 9, 10, 1) on DBD::CSV ok 458 - prepare INSERT INTO PREC VALUES (19, 11, 3, 1) on DBD::CSV ok 459 - execute INSERT INTO PREC VALUES (19, 11, 3, 1) on DBD::CSV ok 460 - prepare INSERT INTO PREC VALUES (20, 11, 4, 2) on DBD::CSV ok 461 - execute INSERT INTO PREC VALUES (20, 11, 4, 2) on DBD::CSV ok 462 - prepare INSERT INTO PREC VALUES (21, 12, 4, 1) on DBD::CSV ok 463 - execute INSERT INTO PREC VALUES (21, 12, 4, 1) on DBD::CSV ok 464 - prepare INSERT INTO PREC VALUES (22, 12, 3, 2) on DBD::CSV ok 465 - execute INSERT INTO PREC VALUES (22, 12, 3, 2) on DBD::CSV ok 466 - prepare CREATE TABLE LANDSCAPE (id INT, landscapename CHAR) on DBD::CSV ok 467 - execute CREATE TABLE LANDSCAPE (id INT, landscapename CHAR) on DBD::CSV ok 468 - prepare INSERT INTO LANDSCAPE VALUES (1, 'Logistic') on DBD::CSV ok 469 - execute INSERT INTO LANDSCAPE VALUES (1, 'Logistic') on DBD::CSV ok 470 - prepare INSERT INTO LANDSCAPE VALUES (2, 'Infrastructure') on DBD::CSV ok 471 - execute INSERT INTO LANDSCAPE VALUES (2, 'Infrastructure') on DBD::CSV ok 472 - prepare INSERT INTO LANDSCAPE VALUES (3, 'CPAN') on DBD::CSV ok 473 - execute INSERT INTO LANDSCAPE VALUES (3, 'CPAN') on DBD::CSV ok 474 - prepare CREATE TABLE CONTACT (id INT, surname CHAR, familyname CHAR, phone CHAR, userid CHAR, mailaddr CHAR) on DBD::CSV ok 475 - execute CREATE TABLE CONTACT (id INT, surname CHAR, familyname CHAR, phone CHAR, userid CHAR, mailaddr CHAR) on DBD::CSV ok 476 - prepare INSERT INTO CONTACT VALUES ( 1, 'Hans Peter', 'Mueller', '12345', 'HPMUE', 'hp-mueller@here.com') on DBD::CSV ok 477 - execute INSERT INTO CONTACT VALUES ( 1, 'Hans Peter', 'Mueller', '12345', 'HPMUE', 'hp-mueller@here.com') on DBD::CSV ok 478 - prepare INSERT INTO CONTACT VALUES ( 2, 'Knut', 'Inge', '54321', 'KINGE', 'k-inge@here.com') on DBD::CSV ok 479 - execute INSERT INTO CONTACT VALUES ( 2, 'Knut', 'Inge', '54321', 'KINGE', 'k-inge@here.com') on DBD::CSV ok 480 - prepare INSERT INTO CONTACT VALUES ( 3, 'Lola', 'Nguyen', '+1-123-45678-90', 'LNYUG', 'lola.ngyuen@customer.com') on DBD::CSV ok 481 - execute INSERT INTO CONTACT VALUES ( 3, 'Lola', 'Nguyen', '+1-123-45678-90', 'LNYUG', 'lola.ngyuen@customer.com') on DBD::CSV ok 482 - prepare INSERT INTO CONTACT VALUES ( 4, 'Helge', 'Brunft', '+41-123-45678-09', 'HBRUN', 'helge.brunft@external-dc.at') on DBD::CSV ok 483 - execute INSERT INTO CONTACT VALUES ( 4, 'Helge', 'Brunft', '+41-123-45678-09', 'HBRUN', 'helge.brunft@external-dc.at') on DBD::CSV ok 484 - prepare CREATE TABLE NM_LANDSCAPE (id INT, ls_id INT, obj_id INT, obj_type INT) on DBD::CSV ok 485 - execute CREATE TABLE NM_LANDSCAPE (id INT, ls_id INT, obj_id INT, obj_type INT) on DBD::CSV ok 486 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 1, 1, 1, 2) on DBD::CSV ok 487 - execute INSERT INTO NM_LANDSCAPE VALUES ( 1, 1, 1, 2) on DBD::CSV ok 488 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 2, 1, 2, 2) on DBD::CSV ok 489 - execute INSERT INTO NM_LANDSCAPE VALUES ( 2, 1, 2, 2) on DBD::CSV ok 490 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 3, 3, 3, 2) on DBD::CSV ok 491 - execute INSERT INTO NM_LANDSCAPE VALUES ( 3, 3, 3, 2) on DBD::CSV ok 492 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 4, 3, 4, 2) on DBD::CSV ok 493 - execute INSERT INTO NM_LANDSCAPE VALUES ( 4, 3, 4, 2) on DBD::CSV ok 494 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 5, 2, 5, 2) on DBD::CSV ok 495 - execute INSERT INTO NM_LANDSCAPE VALUES ( 5, 2, 5, 2) on DBD::CSV ok 496 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 6, 2, 6, 2) on DBD::CSV ok 497 - execute INSERT INTO NM_LANDSCAPE VALUES ( 6, 2, 6, 2) on DBD::CSV ok 498 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 7, 2, 7, 2) on DBD::CSV ok 499 - execute INSERT INTO NM_LANDSCAPE VALUES ( 7, 2, 7, 2) on DBD::CSV ok 500 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 8, 2, 8, 2) on DBD::CSV ok 501 - execute INSERT INTO NM_LANDSCAPE VALUES ( 8, 2, 8, 2) on DBD::CSV ok 502 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 9, 3, 9, 2) on DBD::CSV ok 503 - execute INSERT INTO NM_LANDSCAPE VALUES ( 9, 3, 9, 2) on DBD::CSV ok 504 - prepare INSERT INTO NM_LANDSCAPE VALUES (10, 3,10, 2) on DBD::CSV ok 505 - execute INSERT INTO NM_LANDSCAPE VALUES (10, 3,10, 2) on DBD::CSV ok 506 - prepare INSERT INTO NM_LANDSCAPE VALUES (11, 1, 1, 1) on DBD::CSV ok 507 - execute INSERT INTO NM_LANDSCAPE VALUES (11, 1, 1, 1) on DBD::CSV ok 508 - prepare INSERT INTO NM_LANDSCAPE VALUES (12, 2, 2, 1) on DBD::CSV ok 509 - execute INSERT INTO NM_LANDSCAPE VALUES (12, 2, 2, 1) on DBD::CSV ok 510 - prepare INSERT INTO NM_LANDSCAPE VALUES (13, 2, 2, 3) on DBD::CSV ok 511 - execute INSERT INTO NM_LANDSCAPE VALUES (13, 2, 2, 3) on DBD::CSV ok 512 - prepare INSERT INTO NM_LANDSCAPE VALUES (14, 3, 1, 3) on DBD::CSV ok 513 - execute INSERT INTO NM_LANDSCAPE VALUES (14, 3, 1, 3) on DBD::CSV ok 514 - prepare CREATE TABLE APPL_CONTACT (id INT, contact_id INT, appl_id INT, contact_type CHAR) on DBD::CSV ok 515 - execute CREATE TABLE APPL_CONTACT (id INT, contact_id INT, appl_id INT, contact_type CHAR) on DBD::CSV ok 516 - prepare INSERT INTO APPL_CONTACT VALUES (1, 3, 1, 'OWNER') on DBD::CSV ok 517 - execute INSERT INTO APPL_CONTACT VALUES (1, 3, 1, 'OWNER') on DBD::CSV ok 518 - prepare INSERT INTO APPL_CONTACT VALUES (2, 3, 2, 'OWNER') on DBD::CSV ok 519 - execute INSERT INTO APPL_CONTACT VALUES (2, 3, 2, 'OWNER') on DBD::CSV ok 520 - prepare INSERT INTO APPL_CONTACT VALUES (3, 4, 3, 'ADMIN') on DBD::CSV ok 521 - execute INSERT INTO APPL_CONTACT VALUES (3, 4, 3, 'ADMIN') on DBD::CSV ok 522 - prepare INSERT INTO APPL_CONTACT VALUES (4, 4, 4, 'ADMIN') on DBD::CSV ok 523 - execute INSERT INTO APPL_CONTACT VALUES (4, 4, 4, 'ADMIN') on DBD::CSV ok 524 - prepare INSERT INTO APPL_CONTACT VALUES (5, 4, 5, 'ADMIN') on DBD::CSV ok 525 - execute INSERT INTO APPL_CONTACT VALUES (5, 4, 5, 'ADMIN') on DBD::CSV ok 526 - prepare INSERT INTO APPL_CONTACT VALUES (6, 4, 6, 'ADMIN') on DBD::CSV ok 527 - execute INSERT INTO APPL_CONTACT VALUES (6, 4, 6, 'ADMIN') on DBD::CSV ok 528 - prepare SELECT pname,sname FROM Prof NATURAL JOIN Subject using DBD::CSV ok 529 - execute SELECT pname,sname FROM Prof NATURAL JOIN Subject using DBD::CSV ok 530 - NATURAL JOIN - with named columns in select list ok 531 - prepare SELECT * FROM Prof NATURAL JOIN Subject using DBD::CSV ok 532 - execute SELECT * FROM Prof NATURAL JOIN Subject using DBD::CSV ok 533 - NATURAL JOIN - with select list = * ok 534 - prepare SELECT UPPER(pname) AS P,Prof.pid,pname,sname FROM Prof NATURAL JOIN Subject using DBD::CSV ok 535 - execute SELECT UPPER(pname) AS P,Prof.pid,pname,sname FROM Prof NATURAL JOIN Subject using DBD::CSV ok 536 - NATURAL JOIN - with computed columns ok 537 - prepare SELECT UPPER(pname) AS P,pid,pname,sname FROM Prof NATURAL JOIN Subject using DBD::CSV ok 538 - execute SELECT UPPER(pname) AS P,pid,pname,sname FROM Prof NATURAL JOIN Subject using DBD::CSV ok 539 - NATURAL JOIN - with no specifier on join column ok 540 - prepare SELECT UPPER(pname) AS P,pid,pname,sname FROM Prof JOIN Subject using (pid) using DBD::CSV ok 541 - execute SELECT UPPER(pname) AS P,pid,pname,sname FROM Prof JOIN Subject using (pid) using DBD::CSV ok 542 - INNER JOIN - with no specifier on join column ok 543 - prepare SELECT * FROM Prof LEFT JOIN Subject USING(pid) using DBD::CSV ok 544 - execute SELECT * FROM Prof LEFT JOIN Subject USING(pid) using DBD::CSV ok 545 - LEFT JOIN ok 546 - prepare SELECT pid,pname,sname FROM Prof LEFT JOIN Subject USING(pid) using DBD::CSV ok 547 - execute SELECT pid,pname,sname FROM Prof LEFT JOIN Subject USING(pid) using DBD::CSV ok 548 - LEFT JOIN - enumerated columns ok 549 - prepare SELECT subject.pid,pname,sname FROM Prof LEFT JOIN Subject USING(pid) using DBD::CSV ok 550 - execute SELECT subject.pid,pname,sname FROM Prof LEFT JOIN Subject USING(pid) using DBD::CSV ok 551 - LEFT JOIN - perversely intentionally mis-enumerated columns ok 552 - prepare SELECT subject.pid, pname, sname FROM prof LEFT JOIN subject USING(pid) using DBD::CSV ok 553 - execute SELECT subject.pid, pname, sname FROM prof LEFT JOIN subject USING(pid) using DBD::CSV ok 554 - LEFT JOIN - lower case keywords ok 555 - prepare SELECT * FROM Prof RIGHT JOIN Subject USING(pid) using DBD::CSV ok 556 - execute SELECT * FROM Prof RIGHT JOIN Subject USING(pid) using DBD::CSV ok 557 - RIGHT JOIN ok 558 - prepare SELECT pid,sname,pname FROM Prof RIGHT JOIN Subject USING(pid) using DBD::CSV ok 559 - execute SELECT pid,sname,pname FROM Prof RIGHT JOIN Subject USING(pid) using DBD::CSV ok 560 - RIGHT JOIN - enumerated columns ok 561 - prepare SELECT * FROM Prof FULL JOIN Subject USING(pid) using DBD::CSV ok 562 - execute SELECT * FROM Prof FULL JOIN Subject USING(pid) using DBD::CSV ok 563 - FULL JOIN ok 564 - prepare SELECT * FROM Prof AS P,Subject AS S WHERE P.pid=S.pid using DBD::CSV ok 565 - execute SELECT * FROM Prof AS P,Subject AS S WHERE P.pid=S.pid using DBD::CSV ok 566 - IMPLICIT JOIN - two tables ok 567 - prepare SELECT * # FROM Prof AS P,Subject AS S,Room AS R # WHERE P.pid=S.pid # AND P.pid=R.pid using DBD::CSV ok 568 - execute SELECT * # FROM Prof AS P,Subject AS S,Room AS R # WHERE P.pid=S.pid # AND P.pid=R.pid using DBD::CSV ok 569 - IMPLICIT JOIN - three tables ok 570 - prepare SELECT * FROM author NATURAL JOIN book using DBD::CSV ok 571 - execute SELECT * FROM author NATURAL JOIN book using DBD::CSV ok 572 - Columns in NATURAL JOIN - on unique id's with select list = * ok 573 - NATURAL JOIN - on unique id's with select list = * ok 574 - prepare SELECT * FROM t1 CROSS JOIN t2 using DBD::CSV ok 575 - execute SELECT * FROM t1 CROSS JOIN t2 using DBD::CSV ok 576 - Columns in CROSS JOIN with select list = * ok 577 - CROSS JOIN with select list = * ok 578 - prepare SELECT * FROM t1 INNER JOIN t2 ON t1.num = t2.num using DBD::CSV ok 579 - execute SELECT * FROM t1 INNER JOIN t2 ON t1.num = t2.num using DBD::CSV ok 580 - Columns in INNER JOIN with select list = * ok 581 - INNER JOIN with select list = * ok 582 - prepare SELECT * FROM t1 INNER JOIN t2 USING (num) using DBD::CSV ok 583 - execute SELECT * FROM t1 INNER JOIN t2 USING (num) using DBD::CSV ok 584 - Columns in INNER JOINS (USING) with select list = * ok 585 - INNER JOINS (USING) with select list = * ok 586 - prepare SELECT * FROM t1 NATURAL INNER JOIN t2 using DBD::CSV ok 587 - execute SELECT * FROM t1 NATURAL INNER JOIN t2 using DBD::CSV ok 588 - Columns in INNER JOINS (NATURAL) with select list = * ok 589 - INNER JOINS (NATURAL) with select list = * ok 590 - prepare SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num using DBD::CSV ok 591 - execute SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num using DBD::CSV ok 592 - Columns in LEFT JOINS (using ON condition) with select list = * ok 593 - LEFT JOINS (using ON condition) with select list = * ok 594 - prepare SELECT * FROM t1 LEFT JOIN t2 USING (num) using DBD::CSV ok 595 - execute SELECT * FROM t1 LEFT JOIN t2 USING (num) using DBD::CSV ok 596 - Columns in LEFT JOINS (USING (num) condition) with select list = * ok 597 - LEFT JOINS (USING (num) condition) with select list = * ok 598 - prepare SELECT * FROM t1 RIGHT JOIN t2 ON t1.num = t2.num using DBD::CSV ok 599 - execute SELECT * FROM t1 RIGHT JOIN t2 ON t1.num = t2.num using DBD::CSV ok 600 - Columns in Right Joins (using ON condition) with select list = * ok 601 - Right Joins (using ON condition) with select list = * ok 602 - prepare SELECT * FROM t2 LEFT JOIN t1 ON t1.num = t2.num using DBD::CSV ok 603 - execute SELECT * FROM t2 LEFT JOIN t1 ON t1.num = t2.num using DBD::CSV ok 604 - Columns in Left Joins (reverse former Right Join) with select list = * ok 605 - Left Joins (reverse former Right Join) with select list = * ok 606 - prepare SELECT * FROM t1 FULL JOIN t2 ON t1.num = t2.num using DBD::CSV ok 607 - execute SELECT * FROM t1 FULL JOIN t2 ON t1.num = t2.num using DBD::CSV ok 608 - Columns in Full Joins (using ON condition) with select list = * ok 609 - Full Joins (using ON condition) with select list = * # break here ok 610 - prepare SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num AND t2.wert = 'xxx' using DBD::CSV # TODO Analyze ok 611 - execute SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num AND t2.wert = 'xxx' using DBD::CSV # TODO Analyze ok 612 - Columns in Left Joins (using ON t1.num = t2.num AND t2.wert = "xxx") with select list = * # TODO Analyze not ok 613 - Left Joins (using ON t1.num = t2.num AND t2.wert = "xxx") with select list = * # TODO Analyze # Failed (TODO) test 'Left Joins (using ON t1.num = t2.num AND t2.wert = "xxx") with select list = *' # at t/08join.t line 675. # Structures begin differing at: # $got->[2][2] = '3' # $expected->[2][2] = undef # break here ok 614 - prepare SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num WHERE (t2.wert = 'xxx' OR t2.wert IS NULL) using DBD::CSV # TODO Analyze ok 615 - execute SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num WHERE (t2.wert = 'xxx' OR t2.wert IS NULL) using DBD::CSV # TODO Analyze ok 616 - Columns in Left Joins (using ON t1.num = t2.num WHERE (t2.wert = "xxx" OR t2.wert IS NULL)) with select list = * # TODO Analyze not ok 617 - Left Joins (using ON t1.num = t2.num WHERE (t2.wert = "xxx" OR t2.wert IS NULL)) with select list = * # TODO Analyze # Failed (TODO) test 'Left Joins (using ON t1.num = t2.num WHERE (t2.wert = "xxx" OR t2.wert IS NULL)) with select list = *' # at t/08join.t line 675. # Structures begin differing at: # $got->[2] = Does not exist # $expected->[2] = ARRAY(0x100d95e40) ok 618 - prepare SELECT applname, appluniq, version, nodename # FROM APPL, PREC, NODE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id using DBD::CSV ok 619 - execute SELECT applname, appluniq, version, nodename # FROM APPL, PREC, NODE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id using DBD::CSV ok 620 - DEFAULT INNER (1) with named columns ok 621 - prepare SELECT applname, appluniq, version, landscapename, nodename # FROM APPL, PREC, NODE, LANDSCAPE, NM_LANDSCAPE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND NM_LANDSCAPE.obj_id=APPL.id # AND NM_LANDSCAPE.obj_type=1 # AND NM_LANDSCAPE.ls_id=LANDSCAPE.id using DBD::CSV ok 622 - execute SELECT applname, appluniq, version, landscapename, nodename # FROM APPL, PREC, NODE, LANDSCAPE, NM_LANDSCAPE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND NM_LANDSCAPE.obj_id=APPL.id # AND NM_LANDSCAPE.obj_type=1 # AND NM_LANDSCAPE.ls_id=LANDSCAPE.id using DBD::CSV ok 623 - DEFAULT INNER (2) with named columns ok 624 - prepare SELECT applname, appluniq, version, surname, familyname, phone, nodename # FROM APPL, PREC, NODE, CONTACT, APPL_CONTACT # WHERE appl_type='CUPS' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND APPL_CONTACT.appl_id=APPL.id # AND APPL_CONTACT.contact_id=CONTACT.id # AND PREC.PRECEDENCE=1 # ORDER BY appluniq DESC, applname ASC using DBD::CSV ok 625 - execute SELECT applname, appluniq, version, surname, familyname, phone, nodename # FROM APPL, PREC, NODE, CONTACT, APPL_CONTACT # WHERE appl_type='CUPS' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND APPL_CONTACT.appl_id=APPL.id # AND APPL_CONTACT.contact_id=CONTACT.id # AND PREC.PRECEDENCE=1 # ORDER BY appluniq DESC, applname ASC using DBD::CSV ok 626 - DEFAULT INNER (3) with named columns ok 627 - prepare SELECT DISTINCT applname, appluniq, version, surname, familyname, phone, nodename # FROM APPL, PREC, NODE, CONTACT, APPL_CONTACT # WHERE appl_type='CUPS' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND APPL_CONTACT.appl_id=APPL.id # AND APPL_CONTACT.contact_id=CONTACT.id # ORDER BY applname, appluniq, nodename using DBD::CSV ok 628 - execute SELECT DISTINCT applname, appluniq, version, surname, familyname, phone, nodename # FROM APPL, PREC, NODE, CONTACT, APPL_CONTACT # WHERE appl_type='CUPS' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND APPL_CONTACT.appl_id=APPL.id # AND APPL_CONTACT.contact_id=CONTACT.id # ORDER BY applname, appluniq, nodename using DBD::CSV ok 629 - DEFAULT INNER (4) with named columns ok 630 - prepare SELECT CONCAT('[% NOW %]') AS "timestamp", applname, appluniq, version, nodename # FROM APPL, PREC, NODE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id using DBD::CSV ok 631 - execute SELECT CONCAT('[% NOW %]') AS "timestamp", applname, appluniq, version, nodename # FROM APPL, PREC, NODE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id using DBD::CSV ok 632 - DEFAULT INNER (5) with named columns # break here ok 633 - prepare SELECT pname, sname, rname # FROM Prof p # JOIN Subject s # ON p.pid = s.pid # JOIN Room r # ON p.pid = r.pid # using DBD::CSV # TODO Not supported yet! ok 634 - execute SELECT pname, sname, rname # FROM Prof p # JOIN Subject s # ON p.pid = s.pid # JOIN Room r # ON p.pid = r.pid # using DBD::CSV fails # TODO Not supported yet! ok 635 - Complex INNER JOIN # TODO Not supported yet! # break here ok 636 - prepare SELECT pname, sname, rname # FROM Prof p # JOIN Subject s USING (pid) # JOIN Room r USING (pid) # using DBD::CSV fails # TODO Not supported yet! ok 637 - Complex INNER JOIN (using) # TODO Not supported yet! # break here ok 638 - prepare SELECT pname, sname, rname # FROM Prof NATURAL JOIN Subject NATURAL JOIN Room # using DBD::CSV fails # TODO Not supported yet! ok 639 - Complex NATURAL JOIN # TODO Not supported yet! # break here ok 640 - prepare SELECT pname, sname, rname # FROM Prof p # LEFT JOIN Subject s # ON p.pid = s.pid # LEFT JOIN Room r # ON p.pid = r.pid # using DBD::CSV # TODO Not supported yet! ok 641 - execute SELECT pname, sname, rname # FROM Prof p # LEFT JOIN Subject s # ON p.pid = s.pid # LEFT JOIN Room r # ON p.pid = r.pid # using DBD::CSV fails # TODO Not supported yet! ok 642 - Complex LEFT JOIN # TODO Not supported yet! # Running tests for DBD::File ok 643 - prepare CREATE TEMP TABLE Prof (pname CHAR, pid INT) on DBD::File ok 644 - execute CREATE TEMP TABLE Prof (pname CHAR, pid INT) on DBD::File ok 645 - prepare INSERT INTO Prof VALUES ('Sue', 1) on DBD::File ok 646 - execute INSERT INTO Prof VALUES ('Sue', 1) on DBD::File ok 647 - prepare INSERT INTO Prof VALUES ('Bob', 2) on DBD::File ok 648 - execute INSERT INTO Prof VALUES ('Bob', 2) on DBD::File ok 649 - prepare INSERT INTO Prof VALUES ('Tom', 3) on DBD::File ok 650 - execute INSERT INTO Prof VALUES ('Tom', 3) on DBD::File ok 651 - prepare CREATE TEMP TABLE Subject (sname CHAR, pid INT) on DBD::File ok 652 - execute CREATE TEMP TABLE Subject (sname CHAR, pid INT) on DBD::File ok 653 - prepare INSERT INTO Subject VALUES ('Chem', 1) on DBD::File ok 654 - execute INSERT INTO Subject VALUES ('Chem', 1) on DBD::File ok 655 - prepare INSERT INTO Subject VALUES ('Bio', 2) on DBD::File ok 656 - execute INSERT INTO Subject VALUES ('Bio', 2) on DBD::File ok 657 - prepare INSERT INTO Subject VALUES ('Math', 2) on DBD::File ok 658 - execute INSERT INTO Subject VALUES ('Math', 2) on DBD::File ok 659 - prepare INSERT INTO Subject VALUES ('English', 4) on DBD::File ok 660 - execute INSERT INTO Subject VALUES ('English', 4) on DBD::File ok 661 - prepare CREATE TEMP TABLE Room (rname CHAR, pid INT) on DBD::File ok 662 - execute CREATE TEMP TABLE Room (rname CHAR, pid INT) on DBD::File ok 663 - prepare INSERT INTO Room VALUES ('1C', 1) on DBD::File ok 664 - execute INSERT INTO Room VALUES ('1C', 1) on DBD::File ok 665 - prepare INSERT INTO Room VALUES ('2B', 2) on DBD::File ok 666 - execute INSERT INTO Room VALUES ('2B', 2) on DBD::File ok 667 - prepare CREATE TEMP TABLE author (author_name CHAR, author_id INT) on DBD::File ok 668 - execute CREATE TEMP TABLE author (author_name CHAR, author_id INT) on DBD::File ok 669 - prepare INSERT INTO author VALUES ('Neal Stephenson',1) on DBD::File ok 670 - execute INSERT INTO author VALUES ('Neal Stephenson',1) on DBD::File ok 671 - prepare INSERT INTO author VALUES ('Vernor Vinge',2) on DBD::File ok 672 - execute INSERT INTO author VALUES ('Vernor Vinge',2) on DBD::File ok 673 - prepare CREATE TEMP TABLE book (book_title CHAR, author_id INT) on DBD::File ok 674 - execute CREATE TEMP TABLE book (book_title CHAR, author_id INT) on DBD::File ok 675 - prepare INSERT INTO book VALUES ('Cryptonomicon',1) on DBD::File ok 676 - execute INSERT INTO book VALUES ('Cryptonomicon',1) on DBD::File ok 677 - prepare INSERT INTO book VALUES ('Dahlgren',3) on DBD::File ok 678 - execute INSERT INTO book VALUES ('Dahlgren',3) on DBD::File ok 679 - prepare CREATE TEMP TABLE t1 (num INT, name CHAR) on DBD::File ok 680 - execute CREATE TEMP TABLE t1 (num INT, name CHAR) on DBD::File ok 681 - prepare INSERT INTO t1 VALUES (1,'a') on DBD::File ok 682 - execute INSERT INTO t1 VALUES (1,'a') on DBD::File ok 683 - prepare INSERT INTO t1 VALUES (2,'b') on DBD::File ok 684 - execute INSERT INTO t1 VALUES (2,'b') on DBD::File ok 685 - prepare INSERT INTO t1 VALUES (3,'c') on DBD::File ok 686 - execute INSERT INTO t1 VALUES (3,'c') on DBD::File ok 687 - prepare CREATE TEMP TABLE t2 (num INT, wert CHAR) on DBD::File ok 688 - execute CREATE TEMP TABLE t2 (num INT, wert CHAR) on DBD::File ok 689 - prepare INSERT INTO t2 VALUES (1,'xxx') on DBD::File ok 690 - execute INSERT INTO t2 VALUES (1,'xxx') on DBD::File ok 691 - prepare INSERT INTO t2 VALUES (3,'yyy') on DBD::File ok 692 - execute INSERT INTO t2 VALUES (3,'yyy') on DBD::File ok 693 - prepare INSERT INTO t2 VALUES (5,'zzz') on DBD::File ok 694 - execute INSERT INTO t2 VALUES (5,'zzz') on DBD::File ok 695 - prepare CREATE TEMP TABLE APPL (id INT, applname CHAR, appluniq CHAR, version CHAR, appl_type CHAR) on DBD::File ok 696 - execute CREATE TEMP TABLE APPL (id INT, applname CHAR, appluniq CHAR, version CHAR, appl_type CHAR) on DBD::File ok 697 - prepare INSERT INTO APPL VALUES ( 1, 'ZQF', 'ZFQLIN', '10.2.0.4', 'Oracle DB') on DBD::File ok 698 - execute INSERT INTO APPL VALUES ( 1, 'ZQF', 'ZFQLIN', '10.2.0.4', 'Oracle DB') on DBD::File ok 699 - prepare INSERT INTO APPL VALUES ( 2, 'YRA', 'YRA-UX', '10.2.0.2', 'Oracle DB') on DBD::File ok 700 - execute INSERT INTO APPL VALUES ( 2, 'YRA', 'YRA-UX', '10.2.0.2', 'Oracle DB') on DBD::File ok 701 - prepare INSERT INTO APPL VALUES ( 3, 'PRN1', 'PRN1-4.B2', '1.1.22', 'CUPS' ) on DBD::File ok 702 - execute INSERT INTO APPL VALUES ( 3, 'PRN1', 'PRN1-4.B2', '1.1.22', 'CUPS' ) on DBD::File ok 703 - prepare INSERT INTO APPL VALUES ( 4, 'PRN2', 'PRN2-4.B2', '1.1.22', 'CUPS' ) on DBD::File ok 704 - execute INSERT INTO APPL VALUES ( 4, 'PRN2', 'PRN2-4.B2', '1.1.22', 'CUPS' ) on DBD::File ok 705 - prepare INSERT INTO APPL VALUES ( 5, 'PRN1', 'PRN1-4.B1', '1.1.22', 'CUPS' ) on DBD::File ok 706 - execute INSERT INTO APPL VALUES ( 5, 'PRN1', 'PRN1-4.B1', '1.1.22', 'CUPS' ) on DBD::File ok 707 - prepare INSERT INTO APPL VALUES ( 7, 'PRN2', 'PRN2-4.B1', '1.1.22', 'CUPS' ) on DBD::File ok 708 - execute INSERT INTO APPL VALUES ( 7, 'PRN2', 'PRN2-4.B1', '1.1.22', 'CUPS' ) on DBD::File ok 709 - prepare INSERT INTO APPL VALUES ( 8, 'sql-stmt', 'SQL::Statement', '1.21', 'Project Web-Site') on DBD::File ok 710 - execute INSERT INTO APPL VALUES ( 8, 'sql-stmt', 'SQL::Statement', '1.21', 'Project Web-Site') on DBD::File ok 711 - prepare INSERT INTO APPL VALUES ( 9, 'cpan.org', 'http://www.cpan.org/', '1.0', 'Web-Site') on DBD::File ok 712 - execute INSERT INTO APPL VALUES ( 9, 'cpan.org', 'http://www.cpan.org/', '1.0', 'Web-Site') on DBD::File ok 713 - prepare INSERT INTO APPL VALUES (10, 'httpd', 'cpan-apache', '2.2.13', 'Web-Server') on DBD::File ok 714 - execute INSERT INTO APPL VALUES (10, 'httpd', 'cpan-apache', '2.2.13', 'Web-Server') on DBD::File ok 715 - prepare INSERT INTO APPL VALUES (11, 'cpan-mods', 'cpan-mods', '8.4.1', 'PostgreSQL DB') on DBD::File ok 716 - execute INSERT INTO APPL VALUES (11, 'cpan-mods', 'cpan-mods', '8.4.1', 'PostgreSQL DB') on DBD::File ok 717 - prepare INSERT INTO APPL VALUES (12, 'cpan-authors', 'cpan-authors', '8.4.1', 'PostgreSQL DB') on DBD::File ok 718 - execute INSERT INTO APPL VALUES (12, 'cpan-authors', 'cpan-authors', '8.4.1', 'PostgreSQL DB') on DBD::File ok 719 - prepare CREATE TEMP TABLE NODE (id INT, nodename CHAR, os CHAR, version CHAR) on DBD::File ok 720 - execute CREATE TEMP TABLE NODE (id INT, nodename CHAR, os CHAR, version CHAR) on DBD::File ok 721 - prepare INSERT INTO NODE VALUES ( 1, 'ernie', 'RHEL', '5.2') on DBD::File ok 722 - execute INSERT INTO NODE VALUES ( 1, 'ernie', 'RHEL', '5.2') on DBD::File ok 723 - prepare INSERT INTO NODE VALUES ( 2, 'bert', 'RHEL', '5.2') on DBD::File ok 724 - execute INSERT INTO NODE VALUES ( 2, 'bert', 'RHEL', '5.2') on DBD::File ok 725 - prepare INSERT INTO NODE VALUES ( 3, 'statler', 'FreeBSD', '7.2') on DBD::File ok 726 - execute INSERT INTO NODE VALUES ( 3, 'statler', 'FreeBSD', '7.2') on DBD::File ok 727 - prepare INSERT INTO NODE VALUES ( 4, 'waldorf', 'FreeBSD', '7.2') on DBD::File ok 728 - execute INSERT INTO NODE VALUES ( 4, 'waldorf', 'FreeBSD', '7.2') on DBD::File ok 729 - prepare INSERT INTO NODE VALUES ( 5, 'piggy', 'NetBSD', '5.0.2') on DBD::File ok 730 - execute INSERT INTO NODE VALUES ( 5, 'piggy', 'NetBSD', '5.0.2') on DBD::File ok 731 - prepare INSERT INTO NODE VALUES ( 6, 'kermit', 'NetBSD', '5.0.2') on DBD::File ok 732 - execute INSERT INTO NODE VALUES ( 6, 'kermit', 'NetBSD', '5.0.2') on DBD::File ok 733 - prepare INSERT INTO NODE VALUES ( 7, 'samson', 'NetBSD', '5.0.2') on DBD::File ok 734 - execute INSERT INTO NODE VALUES ( 7, 'samson', 'NetBSD', '5.0.2') on DBD::File ok 735 - prepare INSERT INTO NODE VALUES ( 8, 'tiffy', 'NetBSD', '5.0.2') on DBD::File ok 736 - execute INSERT INTO NODE VALUES ( 8, 'tiffy', 'NetBSD', '5.0.2') on DBD::File ok 737 - prepare INSERT INTO NODE VALUES ( 9, 'rowlf', 'Debian Lenny', '5.0') on DBD::File ok 738 - execute INSERT INTO NODE VALUES ( 9, 'rowlf', 'Debian Lenny', '5.0') on DBD::File ok 739 - prepare INSERT INTO NODE VALUES (10, 'fozzy', 'Debian Lenny', '5.0') on DBD::File ok 740 - execute INSERT INTO NODE VALUES (10, 'fozzy', 'Debian Lenny', '5.0') on DBD::File ok 741 - prepare CREATE TEMP TABLE PREC (id INT, appl_id INT, node_id INT, precedence INT) on DBD::File ok 742 - execute CREATE TEMP TABLE PREC (id INT, appl_id INT, node_id INT, precedence INT) on DBD::File ok 743 - prepare INSERT INTO PREC VALUES ( 1, 1, 1, 1) on DBD::File ok 744 - execute INSERT INTO PREC VALUES ( 1, 1, 1, 1) on DBD::File ok 745 - prepare INSERT INTO PREC VALUES ( 2, 1, 2, 2) on DBD::File ok 746 - execute INSERT INTO PREC VALUES ( 2, 1, 2, 2) on DBD::File ok 747 - prepare INSERT INTO PREC VALUES ( 3, 2, 2, 1) on DBD::File ok 748 - execute INSERT INTO PREC VALUES ( 3, 2, 2, 1) on DBD::File ok 749 - prepare INSERT INTO PREC VALUES ( 4, 2, 1, 2) on DBD::File ok 750 - execute INSERT INTO PREC VALUES ( 4, 2, 1, 2) on DBD::File ok 751 - prepare INSERT INTO PREC VALUES ( 5, 3, 5, 1) on DBD::File ok 752 - execute INSERT INTO PREC VALUES ( 5, 3, 5, 1) on DBD::File ok 753 - prepare INSERT INTO PREC VALUES ( 6, 3, 7, 2) on DBD::File ok 754 - execute INSERT INTO PREC VALUES ( 6, 3, 7, 2) on DBD::File ok 755 - prepare INSERT INTO PREC VALUES ( 7, 4, 6, 1) on DBD::File ok 756 - execute INSERT INTO PREC VALUES ( 7, 4, 6, 1) on DBD::File ok 757 - prepare INSERT INTO PREC VALUES ( 8, 4, 8, 2) on DBD::File ok 758 - execute INSERT INTO PREC VALUES ( 8, 4, 8, 2) on DBD::File ok 759 - prepare INSERT INTO PREC VALUES ( 9, 5, 7, 1) on DBD::File ok 760 - execute INSERT INTO PREC VALUES ( 9, 5, 7, 1) on DBD::File ok 761 - prepare INSERT INTO PREC VALUES (10, 5, 5, 2) on DBD::File ok 762 - execute INSERT INTO PREC VALUES (10, 5, 5, 2) on DBD::File ok 763 - prepare INSERT INTO PREC VALUES (11, 6, 8, 1) on DBD::File ok 764 - execute INSERT INTO PREC VALUES (11, 6, 8, 1) on DBD::File ok 765 - prepare INSERT INTO PREC VALUES (12, 7, 6, 2) on DBD::File ok 766 - execute INSERT INTO PREC VALUES (12, 7, 6, 2) on DBD::File ok 767 - prepare INSERT INTO PREC VALUES (13, 10, 9, 1) on DBD::File ok 768 - execute INSERT INTO PREC VALUES (13, 10, 9, 1) on DBD::File ok 769 - prepare INSERT INTO PREC VALUES (14, 10, 10, 1) on DBD::File ok 770 - execute INSERT INTO PREC VALUES (14, 10, 10, 1) on DBD::File ok 771 - prepare INSERT INTO PREC VALUES (15, 8, 9, 1) on DBD::File ok 772 - execute INSERT INTO PREC VALUES (15, 8, 9, 1) on DBD::File ok 773 - prepare INSERT INTO PREC VALUES (16, 8, 10, 1) on DBD::File ok 774 - execute INSERT INTO PREC VALUES (16, 8, 10, 1) on DBD::File ok 775 - prepare INSERT INTO PREC VALUES (17, 9, 9, 1) on DBD::File ok 776 - execute INSERT INTO PREC VALUES (17, 9, 9, 1) on DBD::File ok 777 - prepare INSERT INTO PREC VALUES (18, 9, 10, 1) on DBD::File ok 778 - execute INSERT INTO PREC VALUES (18, 9, 10, 1) on DBD::File ok 779 - prepare INSERT INTO PREC VALUES (19, 11, 3, 1) on DBD::File ok 780 - execute INSERT INTO PREC VALUES (19, 11, 3, 1) on DBD::File ok 781 - prepare INSERT INTO PREC VALUES (20, 11, 4, 2) on DBD::File ok 782 - execute INSERT INTO PREC VALUES (20, 11, 4, 2) on DBD::File ok 783 - prepare INSERT INTO PREC VALUES (21, 12, 4, 1) on DBD::File ok 784 - execute INSERT INTO PREC VALUES (21, 12, 4, 1) on DBD::File ok 785 - prepare INSERT INTO PREC VALUES (22, 12, 3, 2) on DBD::File ok 786 - execute INSERT INTO PREC VALUES (22, 12, 3, 2) on DBD::File ok 787 - prepare CREATE TEMP TABLE LANDSCAPE (id INT, landscapename CHAR) on DBD::File ok 788 - execute CREATE TEMP TABLE LANDSCAPE (id INT, landscapename CHAR) on DBD::File ok 789 - prepare INSERT INTO LANDSCAPE VALUES (1, 'Logistic') on DBD::File ok 790 - execute INSERT INTO LANDSCAPE VALUES (1, 'Logistic') on DBD::File ok 791 - prepare INSERT INTO LANDSCAPE VALUES (2, 'Infrastructure') on DBD::File ok 792 - execute INSERT INTO LANDSCAPE VALUES (2, 'Infrastructure') on DBD::File ok 793 - prepare INSERT INTO LANDSCAPE VALUES (3, 'CPAN') on DBD::File ok 794 - execute INSERT INTO LANDSCAPE VALUES (3, 'CPAN') on DBD::File ok 795 - prepare CREATE TEMP TABLE CONTACT (id INT, surname CHAR, familyname CHAR, phone CHAR, userid CHAR, mailaddr CHAR) on DBD::File ok 796 - execute CREATE TEMP TABLE CONTACT (id INT, surname CHAR, familyname CHAR, phone CHAR, userid CHAR, mailaddr CHAR) on DBD::File ok 797 - prepare INSERT INTO CONTACT VALUES ( 1, 'Hans Peter', 'Mueller', '12345', 'HPMUE', 'hp-mueller@here.com') on DBD::File ok 798 - execute INSERT INTO CONTACT VALUES ( 1, 'Hans Peter', 'Mueller', '12345', 'HPMUE', 'hp-mueller@here.com') on DBD::File ok 799 - prepare INSERT INTO CONTACT VALUES ( 2, 'Knut', 'Inge', '54321', 'KINGE', 'k-inge@here.com') on DBD::File ok 800 - execute INSERT INTO CONTACT VALUES ( 2, 'Knut', 'Inge', '54321', 'KINGE', 'k-inge@here.com') on DBD::File ok 801 - prepare INSERT INTO CONTACT VALUES ( 3, 'Lola', 'Nguyen', '+1-123-45678-90', 'LNYUG', 'lola.ngyuen@customer.com') on DBD::File ok 802 - execute INSERT INTO CONTACT VALUES ( 3, 'Lola', 'Nguyen', '+1-123-45678-90', 'LNYUG', 'lola.ngyuen@customer.com') on DBD::File ok 803 - prepare INSERT INTO CONTACT VALUES ( 4, 'Helge', 'Brunft', '+41-123-45678-09', 'HBRUN', 'helge.brunft@external-dc.at') on DBD::File ok 804 - execute INSERT INTO CONTACT VALUES ( 4, 'Helge', 'Brunft', '+41-123-45678-09', 'HBRUN', 'helge.brunft@external-dc.at') on DBD::File ok 805 - prepare CREATE TEMP TABLE NM_LANDSCAPE (id INT, ls_id INT, obj_id INT, obj_type INT) on DBD::File ok 806 - execute CREATE TEMP TABLE NM_LANDSCAPE (id INT, ls_id INT, obj_id INT, obj_type INT) on DBD::File ok 807 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 1, 1, 1, 2) on DBD::File ok 808 - execute INSERT INTO NM_LANDSCAPE VALUES ( 1, 1, 1, 2) on DBD::File ok 809 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 2, 1, 2, 2) on DBD::File ok 810 - execute INSERT INTO NM_LANDSCAPE VALUES ( 2, 1, 2, 2) on DBD::File ok 811 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 3, 3, 3, 2) on DBD::File ok 812 - execute INSERT INTO NM_LANDSCAPE VALUES ( 3, 3, 3, 2) on DBD::File ok 813 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 4, 3, 4, 2) on DBD::File ok 814 - execute INSERT INTO NM_LANDSCAPE VALUES ( 4, 3, 4, 2) on DBD::File ok 815 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 5, 2, 5, 2) on DBD::File ok 816 - execute INSERT INTO NM_LANDSCAPE VALUES ( 5, 2, 5, 2) on DBD::File ok 817 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 6, 2, 6, 2) on DBD::File ok 818 - execute INSERT INTO NM_LANDSCAPE VALUES ( 6, 2, 6, 2) on DBD::File ok 819 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 7, 2, 7, 2) on DBD::File ok 820 - execute INSERT INTO NM_LANDSCAPE VALUES ( 7, 2, 7, 2) on DBD::File ok 821 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 8, 2, 8, 2) on DBD::File ok 822 - execute INSERT INTO NM_LANDSCAPE VALUES ( 8, 2, 8, 2) on DBD::File ok 823 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 9, 3, 9, 2) on DBD::File ok 824 - execute INSERT INTO NM_LANDSCAPE VALUES ( 9, 3, 9, 2) on DBD::File ok 825 - prepare INSERT INTO NM_LANDSCAPE VALUES (10, 3,10, 2) on DBD::File ok 826 - execute INSERT INTO NM_LANDSCAPE VALUES (10, 3,10, 2) on DBD::File ok 827 - prepare INSERT INTO NM_LANDSCAPE VALUES (11, 1, 1, 1) on DBD::File ok 828 - execute INSERT INTO NM_LANDSCAPE VALUES (11, 1, 1, 1) on DBD::File ok 829 - prepare INSERT INTO NM_LANDSCAPE VALUES (12, 2, 2, 1) on DBD::File ok 830 - execute INSERT INTO NM_LANDSCAPE VALUES (12, 2, 2, 1) on DBD::File ok 831 - prepare INSERT INTO NM_LANDSCAPE VALUES (13, 2, 2, 3) on DBD::File ok 832 - execute INSERT INTO NM_LANDSCAPE VALUES (13, 2, 2, 3) on DBD::File ok 833 - prepare INSERT INTO NM_LANDSCAPE VALUES (14, 3, 1, 3) on DBD::File ok 834 - execute INSERT INTO NM_LANDSCAPE VALUES (14, 3, 1, 3) on DBD::File ok 835 - prepare CREATE TEMP TABLE APPL_CONTACT (id INT, contact_id INT, appl_id INT, contact_type CHAR) on DBD::File ok 836 - execute CREATE TEMP TABLE APPL_CONTACT (id INT, contact_id INT, appl_id INT, contact_type CHAR) on DBD::File ok 837 - prepare INSERT INTO APPL_CONTACT VALUES (1, 3, 1, 'OWNER') on DBD::File ok 838 - execute INSERT INTO APPL_CONTACT VALUES (1, 3, 1, 'OWNER') on DBD::File ok 839 - prepare INSERT INTO APPL_CONTACT VALUES (2, 3, 2, 'OWNER') on DBD::File ok 840 - execute INSERT INTO APPL_CONTACT VALUES (2, 3, 2, 'OWNER') on DBD::File ok 841 - prepare INSERT INTO APPL_CONTACT VALUES (3, 4, 3, 'ADMIN') on DBD::File ok 842 - execute INSERT INTO APPL_CONTACT VALUES (3, 4, 3, 'ADMIN') on DBD::File ok 843 - prepare INSERT INTO APPL_CONTACT VALUES (4, 4, 4, 'ADMIN') on DBD::File ok 844 - execute INSERT INTO APPL_CONTACT VALUES (4, 4, 4, 'ADMIN') on DBD::File ok 845 - prepare INSERT INTO APPL_CONTACT VALUES (5, 4, 5, 'ADMIN') on DBD::File ok 846 - execute INSERT INTO APPL_CONTACT VALUES (5, 4, 5, 'ADMIN') on DBD::File ok 847 - prepare INSERT INTO APPL_CONTACT VALUES (6, 4, 6, 'ADMIN') on DBD::File ok 848 - execute INSERT INTO APPL_CONTACT VALUES (6, 4, 6, 'ADMIN') on DBD::File ok 849 - prepare SELECT pname,sname FROM Prof NATURAL JOIN Subject using DBD::File ok 850 - execute SELECT pname,sname FROM Prof NATURAL JOIN Subject using DBD::File ok 851 - NATURAL JOIN - with named columns in select list ok 852 - prepare SELECT * FROM Prof NATURAL JOIN Subject using DBD::File ok 853 - execute SELECT * FROM Prof NATURAL JOIN Subject using DBD::File ok 854 - NATURAL JOIN - with select list = * ok 855 - prepare SELECT UPPER(pname) AS P,Prof.pid,pname,sname FROM Prof NATURAL JOIN Subject using DBD::File ok 856 - execute SELECT UPPER(pname) AS P,Prof.pid,pname,sname FROM Prof NATURAL JOIN Subject using DBD::File ok 857 - NATURAL JOIN - with computed columns ok 858 - prepare SELECT UPPER(pname) AS P,pid,pname,sname FROM Prof NATURAL JOIN Subject using DBD::File ok 859 - execute SELECT UPPER(pname) AS P,pid,pname,sname FROM Prof NATURAL JOIN Subject using DBD::File ok 860 - NATURAL JOIN - with no specifier on join column ok 861 - prepare SELECT UPPER(pname) AS P,pid,pname,sname FROM Prof JOIN Subject using (pid) using DBD::File ok 862 - execute SELECT UPPER(pname) AS P,pid,pname,sname FROM Prof JOIN Subject using (pid) using DBD::File ok 863 - INNER JOIN - with no specifier on join column ok 864 - prepare SELECT * FROM Prof LEFT JOIN Subject USING(pid) using DBD::File ok 865 - execute SELECT * FROM Prof LEFT JOIN Subject USING(pid) using DBD::File ok 866 - LEFT JOIN ok 867 - prepare SELECT pid,pname,sname FROM Prof LEFT JOIN Subject USING(pid) using DBD::File ok 868 - execute SELECT pid,pname,sname FROM Prof LEFT JOIN Subject USING(pid) using DBD::File ok 869 - LEFT JOIN - enumerated columns ok 870 - prepare SELECT subject.pid,pname,sname FROM Prof LEFT JOIN Subject USING(pid) using DBD::File ok 871 - execute SELECT subject.pid,pname,sname FROM Prof LEFT JOIN Subject USING(pid) using DBD::File ok 872 - LEFT JOIN - perversely intentionally mis-enumerated columns ok 873 - prepare SELECT subject.pid, pname, sname FROM prof LEFT JOIN subject USING(pid) using DBD::File ok 874 - execute SELECT subject.pid, pname, sname FROM prof LEFT JOIN subject USING(pid) using DBD::File ok 875 - LEFT JOIN - lower case keywords ok 876 - prepare SELECT * FROM Prof RIGHT JOIN Subject USING(pid) using DBD::File ok 877 - execute SELECT * FROM Prof RIGHT JOIN Subject USING(pid) using DBD::File ok 878 - RIGHT JOIN ok 879 - prepare SELECT pid,sname,pname FROM Prof RIGHT JOIN Subject USING(pid) using DBD::File ok 880 - execute SELECT pid,sname,pname FROM Prof RIGHT JOIN Subject USING(pid) using DBD::File ok 881 - RIGHT JOIN - enumerated columns ok 882 - prepare SELECT * FROM Prof FULL JOIN Subject USING(pid) using DBD::File ok 883 - execute SELECT * FROM Prof FULL JOIN Subject USING(pid) using DBD::File ok 884 - FULL JOIN ok 885 - prepare SELECT * FROM Prof AS P,Subject AS S WHERE P.pid=S.pid using DBD::File ok 886 - execute SELECT * FROM Prof AS P,Subject AS S WHERE P.pid=S.pid using DBD::File ok 887 - IMPLICIT JOIN - two tables ok 888 - prepare SELECT * # FROM Prof AS P,Subject AS S,Room AS R # WHERE P.pid=S.pid # AND P.pid=R.pid using DBD::File ok 889 - execute SELECT * # FROM Prof AS P,Subject AS S,Room AS R # WHERE P.pid=S.pid # AND P.pid=R.pid using DBD::File ok 890 - IMPLICIT JOIN - three tables ok 891 - prepare SELECT * FROM author NATURAL JOIN book using DBD::File ok 892 - execute SELECT * FROM author NATURAL JOIN book using DBD::File ok 893 - Columns in NATURAL JOIN - on unique id's with select list = * ok 894 - NATURAL JOIN - on unique id's with select list = * ok 895 - prepare SELECT * FROM t1 CROSS JOIN t2 using DBD::File ok 896 - execute SELECT * FROM t1 CROSS JOIN t2 using DBD::File ok 897 - Columns in CROSS JOIN with select list = * ok 898 - CROSS JOIN with select list = * ok 899 - prepare SELECT * FROM t1 INNER JOIN t2 ON t1.num = t2.num using DBD::File ok 900 - execute SELECT * FROM t1 INNER JOIN t2 ON t1.num = t2.num using DBD::File ok 901 - Columns in INNER JOIN with select list = * ok 902 - INNER JOIN with select list = * ok 903 - prepare SELECT * FROM t1 INNER JOIN t2 USING (num) using DBD::File ok 904 - execute SELECT * FROM t1 INNER JOIN t2 USING (num) using DBD::File ok 905 - Columns in INNER JOINS (USING) with select list = * ok 906 - INNER JOINS (USING) with select list = * ok 907 - prepare SELECT * FROM t1 NATURAL INNER JOIN t2 using DBD::File ok 908 - execute SELECT * FROM t1 NATURAL INNER JOIN t2 using DBD::File ok 909 - Columns in INNER JOINS (NATURAL) with select list = * ok 910 - INNER JOINS (NATURAL) with select list = * ok 911 - prepare SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num using DBD::File ok 912 - execute SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num using DBD::File ok 913 - Columns in LEFT JOINS (using ON condition) with select list = * ok 914 - LEFT JOINS (using ON condition) with select list = * ok 915 - prepare SELECT * FROM t1 LEFT JOIN t2 USING (num) using DBD::File ok 916 - execute SELECT * FROM t1 LEFT JOIN t2 USING (num) using DBD::File ok 917 - Columns in LEFT JOINS (USING (num) condition) with select list = * ok 918 - LEFT JOINS (USING (num) condition) with select list = * ok 919 - prepare SELECT * FROM t1 RIGHT JOIN t2 ON t1.num = t2.num using DBD::File ok 920 - execute SELECT * FROM t1 RIGHT JOIN t2 ON t1.num = t2.num using DBD::File ok 921 - Columns in Right Joins (using ON condition) with select list = * ok 922 - Right Joins (using ON condition) with select list = * ok 923 - prepare SELECT * FROM t2 LEFT JOIN t1 ON t1.num = t2.num using DBD::File ok 924 - execute SELECT * FROM t2 LEFT JOIN t1 ON t1.num = t2.num using DBD::File ok 925 - Columns in Left Joins (reverse former Right Join) with select list = * ok 926 - Left Joins (reverse former Right Join) with select list = * ok 927 - prepare SELECT * FROM t1 FULL JOIN t2 ON t1.num = t2.num using DBD::File ok 928 - execute SELECT * FROM t1 FULL JOIN t2 ON t1.num = t2.num using DBD::File ok 929 - Columns in Full Joins (using ON condition) with select list = * ok 930 - Full Joins (using ON condition) with select list = * # break here ok 931 - prepare SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num AND t2.wert = 'xxx' using DBD::File # TODO Analyze ok 932 - execute SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num AND t2.wert = 'xxx' using DBD::File # TODO Analyze ok 933 - Columns in Left Joins (using ON t1.num = t2.num AND t2.wert = "xxx") with select list = * # TODO Analyze not ok 934 - Left Joins (using ON t1.num = t2.num AND t2.wert = "xxx") with select list = * # TODO Analyze # Failed (TODO) test 'Left Joins (using ON t1.num = t2.num AND t2.wert = "xxx") with select list = *' # at t/08join.t line 675. # Structures begin differing at: # $got->[2][2] = '3' # $expected->[2][2] = undef # break here ok 935 - prepare SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num WHERE (t2.wert = 'xxx' OR t2.wert IS NULL) using DBD::File # TODO Analyze ok 936 - execute SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num WHERE (t2.wert = 'xxx' OR t2.wert IS NULL) using DBD::File # TODO Analyze ok 937 - Columns in Left Joins (using ON t1.num = t2.num WHERE (t2.wert = "xxx" OR t2.wert IS NULL)) with select list = * # TODO Analyze not ok 938 - Left Joins (using ON t1.num = t2.num WHERE (t2.wert = "xxx" OR t2.wert IS NULL)) with select list = * # TODO Analyze # Failed (TODO) test 'Left Joins (using ON t1.num = t2.num WHERE (t2.wert = "xxx" OR t2.wert IS NULL)) with select list = *' # at t/08join.t line 675. # Structures begin differing at: # $got->[2] = Does not exist # $expected->[2] = ARRAY(0x100dda7b0) ok 939 - prepare SELECT applname, appluniq, version, nodename # FROM APPL, PREC, NODE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id using DBD::File ok 940 - execute SELECT applname, appluniq, version, nodename # FROM APPL, PREC, NODE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id using DBD::File ok 941 - DEFAULT INNER (1) with named columns ok 942 - prepare SELECT applname, appluniq, version, landscapename, nodename # FROM APPL, PREC, NODE, LANDSCAPE, NM_LANDSCAPE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND NM_LANDSCAPE.obj_id=APPL.id # AND NM_LANDSCAPE.obj_type=1 # AND NM_LANDSCAPE.ls_id=LANDSCAPE.id using DBD::File ok 943 - execute SELECT applname, appluniq, version, landscapename, nodename # FROM APPL, PREC, NODE, LANDSCAPE, NM_LANDSCAPE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND NM_LANDSCAPE.obj_id=APPL.id # AND NM_LANDSCAPE.obj_type=1 # AND NM_LANDSCAPE.ls_id=LANDSCAPE.id using DBD::File ok 944 - DEFAULT INNER (2) with named columns ok 945 - prepare SELECT applname, appluniq, version, surname, familyname, phone, nodename # FROM APPL, PREC, NODE, CONTACT, APPL_CONTACT # WHERE appl_type='CUPS' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND APPL_CONTACT.appl_id=APPL.id # AND APPL_CONTACT.contact_id=CONTACT.id # AND PREC.PRECEDENCE=1 # ORDER BY appluniq DESC, applname ASC using DBD::File ok 946 - execute SELECT applname, appluniq, version, surname, familyname, phone, nodename # FROM APPL, PREC, NODE, CONTACT, APPL_CONTACT # WHERE appl_type='CUPS' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND APPL_CONTACT.appl_id=APPL.id # AND APPL_CONTACT.contact_id=CONTACT.id # AND PREC.PRECEDENCE=1 # ORDER BY appluniq DESC, applname ASC using DBD::File ok 947 - DEFAULT INNER (3) with named columns ok 948 - prepare SELECT DISTINCT applname, appluniq, version, surname, familyname, phone, nodename # FROM APPL, PREC, NODE, CONTACT, APPL_CONTACT # WHERE appl_type='CUPS' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND APPL_CONTACT.appl_id=APPL.id # AND APPL_CONTACT.contact_id=CONTACT.id # ORDER BY applname, appluniq, nodename using DBD::File ok 949 - execute SELECT DISTINCT applname, appluniq, version, surname, familyname, phone, nodename # FROM APPL, PREC, NODE, CONTACT, APPL_CONTACT # WHERE appl_type='CUPS' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND APPL_CONTACT.appl_id=APPL.id # AND APPL_CONTACT.contact_id=CONTACT.id # ORDER BY applname, appluniq, nodename using DBD::File ok 950 - DEFAULT INNER (4) with named columns ok 951 - prepare SELECT CONCAT('[% NOW %]') AS "timestamp", applname, appluniq, version, nodename # FROM APPL, PREC, NODE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id using DBD::File ok 952 - execute SELECT CONCAT('[% NOW %]') AS "timestamp", applname, appluniq, version, nodename # FROM APPL, PREC, NODE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id using DBD::File ok 953 - DEFAULT INNER (5) with named columns # break here ok 954 - prepare SELECT pname, sname, rname # FROM Prof p # JOIN Subject s # ON p.pid = s.pid # JOIN Room r # ON p.pid = r.pid # using DBD::File # TODO Not supported yet! ok 955 - execute SELECT pname, sname, rname # FROM Prof p # JOIN Subject s # ON p.pid = s.pid # JOIN Room r # ON p.pid = r.pid # using DBD::File fails # TODO Not supported yet! ok 956 - Complex INNER JOIN # TODO Not supported yet! # break here ok 957 - prepare SELECT pname, sname, rname # FROM Prof p # JOIN Subject s USING (pid) # JOIN Room r USING (pid) # using DBD::File fails # TODO Not supported yet! ok 958 - Complex INNER JOIN (using) # TODO Not supported yet! # break here ok 959 - prepare SELECT pname, sname, rname # FROM Prof NATURAL JOIN Subject NATURAL JOIN Room # using DBD::File fails # TODO Not supported yet! ok 960 - Complex NATURAL JOIN # TODO Not supported yet! # break here ok 961 - prepare SELECT pname, sname, rname # FROM Prof p # LEFT JOIN Subject s # ON p.pid = s.pid # LEFT JOIN Room r # ON p.pid = r.pid # using DBD::File # TODO Not supported yet! ok 962 - execute SELECT pname, sname, rname # FROM Prof p # LEFT JOIN Subject s # ON p.pid = s.pid # LEFT JOIN Room r # ON p.pid = r.pid # using DBD::File fails # TODO Not supported yet! ok 963 - Complex LEFT JOIN # TODO Not supported yet! # Running tests for DBD::DBM ok 964 - prepare CREATE TABLE Prof (pname CHAR, pid INT) on DBD::DBM ok 965 - execute CREATE TABLE Prof (pname CHAR, pid INT) on DBD::DBM ok 966 - prepare INSERT INTO Prof VALUES ('Sue', 1) on DBD::DBM ok 967 - execute INSERT INTO Prof VALUES ('Sue', 1) on DBD::DBM ok 968 - prepare INSERT INTO Prof VALUES ('Bob', 2) on DBD::DBM ok 969 - execute INSERT INTO Prof VALUES ('Bob', 2) on DBD::DBM ok 970 - prepare INSERT INTO Prof VALUES ('Tom', 3) on DBD::DBM ok 971 - execute INSERT INTO Prof VALUES ('Tom', 3) on DBD::DBM ok 972 - prepare CREATE TABLE Subject (sname CHAR, pid INT) on DBD::DBM ok 973 - execute CREATE TABLE Subject (sname CHAR, pid INT) on DBD::DBM ok 974 - prepare INSERT INTO Subject VALUES ('Chem', 1) on DBD::DBM ok 975 - execute INSERT INTO Subject VALUES ('Chem', 1) on DBD::DBM ok 976 - prepare INSERT INTO Subject VALUES ('Bio', 2) on DBD::DBM ok 977 - execute INSERT INTO Subject VALUES ('Bio', 2) on DBD::DBM ok 978 - prepare INSERT INTO Subject VALUES ('Math', 2) on DBD::DBM ok 979 - execute INSERT INTO Subject VALUES ('Math', 2) on DBD::DBM ok 980 - prepare INSERT INTO Subject VALUES ('English', 4) on DBD::DBM ok 981 - execute INSERT INTO Subject VALUES ('English', 4) on DBD::DBM ok 982 - prepare CREATE TABLE Room (rname CHAR, pid INT) on DBD::DBM ok 983 - execute CREATE TABLE Room (rname CHAR, pid INT) on DBD::DBM ok 984 - prepare INSERT INTO Room VALUES ('1C', 1) on DBD::DBM ok 985 - execute INSERT INTO Room VALUES ('1C', 1) on DBD::DBM ok 986 - prepare INSERT INTO Room VALUES ('2B', 2) on DBD::DBM ok 987 - execute INSERT INTO Room VALUES ('2B', 2) on DBD::DBM ok 988 - prepare CREATE TABLE author (author_name CHAR, author_id INT) on DBD::DBM ok 989 - execute CREATE TABLE author (author_name CHAR, author_id INT) on DBD::DBM ok 990 - prepare INSERT INTO author VALUES ('Neal Stephenson',1) on DBD::DBM ok 991 - execute INSERT INTO author VALUES ('Neal Stephenson',1) on DBD::DBM ok 992 - prepare INSERT INTO author VALUES ('Vernor Vinge',2) on DBD::DBM ok 993 - execute INSERT INTO author VALUES ('Vernor Vinge',2) on DBD::DBM ok 994 - prepare CREATE TABLE book (book_title CHAR, author_id INT) on DBD::DBM ok 995 - execute CREATE TABLE book (book_title CHAR, author_id INT) on DBD::DBM ok 996 - prepare INSERT INTO book VALUES ('Cryptonomicon',1) on DBD::DBM ok 997 - execute INSERT INTO book VALUES ('Cryptonomicon',1) on DBD::DBM ok 998 - prepare INSERT INTO book VALUES ('Dahlgren',3) on DBD::DBM ok 999 - execute INSERT INTO book VALUES ('Dahlgren',3) on DBD::DBM ok 1000 - prepare CREATE TABLE t1 (num INT, name CHAR) on DBD::DBM ok 1001 - execute CREATE TABLE t1 (num INT, name CHAR) on DBD::DBM ok 1002 - prepare INSERT INTO t1 VALUES (1,'a') on DBD::DBM ok 1003 - execute INSERT INTO t1 VALUES (1,'a') on DBD::DBM ok 1004 - prepare INSERT INTO t1 VALUES (2,'b') on DBD::DBM ok 1005 - execute INSERT INTO t1 VALUES (2,'b') on DBD::DBM ok 1006 - prepare INSERT INTO t1 VALUES (3,'c') on DBD::DBM ok 1007 - execute INSERT INTO t1 VALUES (3,'c') on DBD::DBM ok 1008 - prepare CREATE TABLE t2 (num INT, wert CHAR) on DBD::DBM ok 1009 - execute CREATE TABLE t2 (num INT, wert CHAR) on DBD::DBM ok 1010 - prepare INSERT INTO t2 VALUES (1,'xxx') on DBD::DBM ok 1011 - execute INSERT INTO t2 VALUES (1,'xxx') on DBD::DBM ok 1012 - prepare INSERT INTO t2 VALUES (3,'yyy') on DBD::DBM ok 1013 - execute INSERT INTO t2 VALUES (3,'yyy') on DBD::DBM ok 1014 - prepare INSERT INTO t2 VALUES (5,'zzz') on DBD::DBM ok 1015 - execute INSERT INTO t2 VALUES (5,'zzz') on DBD::DBM ok 1016 - prepare CREATE TABLE APPL (id INT, applname CHAR, appluniq CHAR, version CHAR, appl_type CHAR) on DBD::DBM ok 1017 - execute CREATE TABLE APPL (id INT, applname CHAR, appluniq CHAR, version CHAR, appl_type CHAR) on DBD::DBM ok 1018 - prepare INSERT INTO APPL VALUES ( 1, 'ZQF', 'ZFQLIN', '10.2.0.4', 'Oracle DB') on DBD::DBM ok 1019 - execute INSERT INTO APPL VALUES ( 1, 'ZQF', 'ZFQLIN', '10.2.0.4', 'Oracle DB') on DBD::DBM ok 1020 - prepare INSERT INTO APPL VALUES ( 2, 'YRA', 'YRA-UX', '10.2.0.2', 'Oracle DB') on DBD::DBM ok 1021 - execute INSERT INTO APPL VALUES ( 2, 'YRA', 'YRA-UX', '10.2.0.2', 'Oracle DB') on DBD::DBM ok 1022 - prepare INSERT INTO APPL VALUES ( 3, 'PRN1', 'PRN1-4.B2', '1.1.22', 'CUPS' ) on DBD::DBM ok 1023 - execute INSERT INTO APPL VALUES ( 3, 'PRN1', 'PRN1-4.B2', '1.1.22', 'CUPS' ) on DBD::DBM ok 1024 - prepare INSERT INTO APPL VALUES ( 4, 'PRN2', 'PRN2-4.B2', '1.1.22', 'CUPS' ) on DBD::DBM ok 1025 - execute INSERT INTO APPL VALUES ( 4, 'PRN2', 'PRN2-4.B2', '1.1.22', 'CUPS' ) on DBD::DBM ok 1026 - prepare INSERT INTO APPL VALUES ( 5, 'PRN1', 'PRN1-4.B1', '1.1.22', 'CUPS' ) on DBD::DBM ok 1027 - execute INSERT INTO APPL VALUES ( 5, 'PRN1', 'PRN1-4.B1', '1.1.22', 'CUPS' ) on DBD::DBM ok 1028 - prepare INSERT INTO APPL VALUES ( 7, 'PRN2', 'PRN2-4.B1', '1.1.22', 'CUPS' ) on DBD::DBM ok 1029 - execute INSERT INTO APPL VALUES ( 7, 'PRN2', 'PRN2-4.B1', '1.1.22', 'CUPS' ) on DBD::DBM ok 1030 - prepare INSERT INTO APPL VALUES ( 8, 'sql-stmt', 'SQL::Statement', '1.21', 'Project Web-Site') on DBD::DBM ok 1031 - execute INSERT INTO APPL VALUES ( 8, 'sql-stmt', 'SQL::Statement', '1.21', 'Project Web-Site') on DBD::DBM ok 1032 - prepare INSERT INTO APPL VALUES ( 9, 'cpan.org', 'http://www.cpan.org/', '1.0', 'Web-Site') on DBD::DBM ok 1033 - execute INSERT INTO APPL VALUES ( 9, 'cpan.org', 'http://www.cpan.org/', '1.0', 'Web-Site') on DBD::DBM ok 1034 - prepare INSERT INTO APPL VALUES (10, 'httpd', 'cpan-apache', '2.2.13', 'Web-Server') on DBD::DBM ok 1035 - execute INSERT INTO APPL VALUES (10, 'httpd', 'cpan-apache', '2.2.13', 'Web-Server') on DBD::DBM ok 1036 - prepare INSERT INTO APPL VALUES (11, 'cpan-mods', 'cpan-mods', '8.4.1', 'PostgreSQL DB') on DBD::DBM ok 1037 - execute INSERT INTO APPL VALUES (11, 'cpan-mods', 'cpan-mods', '8.4.1', 'PostgreSQL DB') on DBD::DBM ok 1038 - prepare INSERT INTO APPL VALUES (12, 'cpan-authors', 'cpan-authors', '8.4.1', 'PostgreSQL DB') on DBD::DBM ok 1039 - execute INSERT INTO APPL VALUES (12, 'cpan-authors', 'cpan-authors', '8.4.1', 'PostgreSQL DB') on DBD::DBM ok 1040 - prepare CREATE TABLE NODE (id INT, nodename CHAR, os CHAR, version CHAR) on DBD::DBM ok 1041 - execute CREATE TABLE NODE (id INT, nodename CHAR, os CHAR, version CHAR) on DBD::DBM ok 1042 - prepare INSERT INTO NODE VALUES ( 1, 'ernie', 'RHEL', '5.2') on DBD::DBM ok 1043 - execute INSERT INTO NODE VALUES ( 1, 'ernie', 'RHEL', '5.2') on DBD::DBM ok 1044 - prepare INSERT INTO NODE VALUES ( 2, 'bert', 'RHEL', '5.2') on DBD::DBM ok 1045 - execute INSERT INTO NODE VALUES ( 2, 'bert', 'RHEL', '5.2') on DBD::DBM ok 1046 - prepare INSERT INTO NODE VALUES ( 3, 'statler', 'FreeBSD', '7.2') on DBD::DBM ok 1047 - execute INSERT INTO NODE VALUES ( 3, 'statler', 'FreeBSD', '7.2') on DBD::DBM ok 1048 - prepare INSERT INTO NODE VALUES ( 4, 'waldorf', 'FreeBSD', '7.2') on DBD::DBM ok 1049 - execute INSERT INTO NODE VALUES ( 4, 'waldorf', 'FreeBSD', '7.2') on DBD::DBM ok 1050 - prepare INSERT INTO NODE VALUES ( 5, 'piggy', 'NetBSD', '5.0.2') on DBD::DBM ok 1051 - execute INSERT INTO NODE VALUES ( 5, 'piggy', 'NetBSD', '5.0.2') on DBD::DBM ok 1052 - prepare INSERT INTO NODE VALUES ( 6, 'kermit', 'NetBSD', '5.0.2') on DBD::DBM ok 1053 - execute INSERT INTO NODE VALUES ( 6, 'kermit', 'NetBSD', '5.0.2') on DBD::DBM ok 1054 - prepare INSERT INTO NODE VALUES ( 7, 'samson', 'NetBSD', '5.0.2') on DBD::DBM ok 1055 - execute INSERT INTO NODE VALUES ( 7, 'samson', 'NetBSD', '5.0.2') on DBD::DBM ok 1056 - prepare INSERT INTO NODE VALUES ( 8, 'tiffy', 'NetBSD', '5.0.2') on DBD::DBM ok 1057 - execute INSERT INTO NODE VALUES ( 8, 'tiffy', 'NetBSD', '5.0.2') on DBD::DBM ok 1058 - prepare INSERT INTO NODE VALUES ( 9, 'rowlf', 'Debian Lenny', '5.0') on DBD::DBM ok 1059 - execute INSERT INTO NODE VALUES ( 9, 'rowlf', 'Debian Lenny', '5.0') on DBD::DBM ok 1060 - prepare INSERT INTO NODE VALUES (10, 'fozzy', 'Debian Lenny', '5.0') on DBD::DBM ok 1061 - execute INSERT INTO NODE VALUES (10, 'fozzy', 'Debian Lenny', '5.0') on DBD::DBM ok 1062 - prepare CREATE TABLE PREC (id INT, appl_id INT, node_id INT, precedence INT) on DBD::DBM ok 1063 - execute CREATE TABLE PREC (id INT, appl_id INT, node_id INT, precedence INT) on DBD::DBM ok 1064 - prepare INSERT INTO PREC VALUES ( 1, 1, 1, 1) on DBD::DBM ok 1065 - execute INSERT INTO PREC VALUES ( 1, 1, 1, 1) on DBD::DBM ok 1066 - prepare INSERT INTO PREC VALUES ( 2, 1, 2, 2) on DBD::DBM ok 1067 - execute INSERT INTO PREC VALUES ( 2, 1, 2, 2) on DBD::DBM ok 1068 - prepare INSERT INTO PREC VALUES ( 3, 2, 2, 1) on DBD::DBM ok 1069 - execute INSERT INTO PREC VALUES ( 3, 2, 2, 1) on DBD::DBM ok 1070 - prepare INSERT INTO PREC VALUES ( 4, 2, 1, 2) on DBD::DBM ok 1071 - execute INSERT INTO PREC VALUES ( 4, 2, 1, 2) on DBD::DBM ok 1072 - prepare INSERT INTO PREC VALUES ( 5, 3, 5, 1) on DBD::DBM ok 1073 - execute INSERT INTO PREC VALUES ( 5, 3, 5, 1) on DBD::DBM ok 1074 - prepare INSERT INTO PREC VALUES ( 6, 3, 7, 2) on DBD::DBM ok 1075 - execute INSERT INTO PREC VALUES ( 6, 3, 7, 2) on DBD::DBM ok 1076 - prepare INSERT INTO PREC VALUES ( 7, 4, 6, 1) on DBD::DBM ok 1077 - execute INSERT INTO PREC VALUES ( 7, 4, 6, 1) on DBD::DBM ok 1078 - prepare INSERT INTO PREC VALUES ( 8, 4, 8, 2) on DBD::DBM ok 1079 - execute INSERT INTO PREC VALUES ( 8, 4, 8, 2) on DBD::DBM ok 1080 - prepare INSERT INTO PREC VALUES ( 9, 5, 7, 1) on DBD::DBM ok 1081 - execute INSERT INTO PREC VALUES ( 9, 5, 7, 1) on DBD::DBM ok 1082 - prepare INSERT INTO PREC VALUES (10, 5, 5, 2) on DBD::DBM ok 1083 - execute INSERT INTO PREC VALUES (10, 5, 5, 2) on DBD::DBM ok 1084 - prepare INSERT INTO PREC VALUES (11, 6, 8, 1) on DBD::DBM ok 1085 - execute INSERT INTO PREC VALUES (11, 6, 8, 1) on DBD::DBM ok 1086 - prepare INSERT INTO PREC VALUES (12, 7, 6, 2) on DBD::DBM ok 1087 - execute INSERT INTO PREC VALUES (12, 7, 6, 2) on DBD::DBM ok 1088 - prepare INSERT INTO PREC VALUES (13, 10, 9, 1) on DBD::DBM ok 1089 - execute INSERT INTO PREC VALUES (13, 10, 9, 1) on DBD::DBM ok 1090 - prepare INSERT INTO PREC VALUES (14, 10, 10, 1) on DBD::DBM ok 1091 - execute INSERT INTO PREC VALUES (14, 10, 10, 1) on DBD::DBM ok 1092 - prepare INSERT INTO PREC VALUES (15, 8, 9, 1) on DBD::DBM ok 1093 - execute INSERT INTO PREC VALUES (15, 8, 9, 1) on DBD::DBM ok 1094 - prepare INSERT INTO PREC VALUES (16, 8, 10, 1) on DBD::DBM ok 1095 - execute INSERT INTO PREC VALUES (16, 8, 10, 1) on DBD::DBM ok 1096 - prepare INSERT INTO PREC VALUES (17, 9, 9, 1) on DBD::DBM ok 1097 - execute INSERT INTO PREC VALUES (17, 9, 9, 1) on DBD::DBM ok 1098 - prepare INSERT INTO PREC VALUES (18, 9, 10, 1) on DBD::DBM ok 1099 - execute INSERT INTO PREC VALUES (18, 9, 10, 1) on DBD::DBM ok 1100 - prepare INSERT INTO PREC VALUES (19, 11, 3, 1) on DBD::DBM ok 1101 - execute INSERT INTO PREC VALUES (19, 11, 3, 1) on DBD::DBM ok 1102 - prepare INSERT INTO PREC VALUES (20, 11, 4, 2) on DBD::DBM ok 1103 - execute INSERT INTO PREC VALUES (20, 11, 4, 2) on DBD::DBM ok 1104 - prepare INSERT INTO PREC VALUES (21, 12, 4, 1) on DBD::DBM ok 1105 - execute INSERT INTO PREC VALUES (21, 12, 4, 1) on DBD::DBM ok 1106 - prepare INSERT INTO PREC VALUES (22, 12, 3, 2) on DBD::DBM ok 1107 - execute INSERT INTO PREC VALUES (22, 12, 3, 2) on DBD::DBM ok 1108 - prepare CREATE TABLE LANDSCAPE (id INT, landscapename CHAR) on DBD::DBM ok 1109 - execute CREATE TABLE LANDSCAPE (id INT, landscapename CHAR) on DBD::DBM ok 1110 - prepare INSERT INTO LANDSCAPE VALUES (1, 'Logistic') on DBD::DBM ok 1111 - execute INSERT INTO LANDSCAPE VALUES (1, 'Logistic') on DBD::DBM ok 1112 - prepare INSERT INTO LANDSCAPE VALUES (2, 'Infrastructure') on DBD::DBM ok 1113 - execute INSERT INTO LANDSCAPE VALUES (2, 'Infrastructure') on DBD::DBM ok 1114 - prepare INSERT INTO LANDSCAPE VALUES (3, 'CPAN') on DBD::DBM ok 1115 - execute INSERT INTO LANDSCAPE VALUES (3, 'CPAN') on DBD::DBM ok 1116 - prepare CREATE TABLE CONTACT (id INT, surname CHAR, familyname CHAR, phone CHAR, userid CHAR, mailaddr CHAR) on DBD::DBM ok 1117 - execute CREATE TABLE CONTACT (id INT, surname CHAR, familyname CHAR, phone CHAR, userid CHAR, mailaddr CHAR) on DBD::DBM ok 1118 - prepare INSERT INTO CONTACT VALUES ( 1, 'Hans Peter', 'Mueller', '12345', 'HPMUE', 'hp-mueller@here.com') on DBD::DBM ok 1119 - execute INSERT INTO CONTACT VALUES ( 1, 'Hans Peter', 'Mueller', '12345', 'HPMUE', 'hp-mueller@here.com') on DBD::DBM ok 1120 - prepare INSERT INTO CONTACT VALUES ( 2, 'Knut', 'Inge', '54321', 'KINGE', 'k-inge@here.com') on DBD::DBM ok 1121 - execute INSERT INTO CONTACT VALUES ( 2, 'Knut', 'Inge', '54321', 'KINGE', 'k-inge@here.com') on DBD::DBM ok 1122 - prepare INSERT INTO CONTACT VALUES ( 3, 'Lola', 'Nguyen', '+1-123-45678-90', 'LNYUG', 'lola.ngyuen@customer.com') on DBD::DBM ok 1123 - execute INSERT INTO CONTACT VALUES ( 3, 'Lola', 'Nguyen', '+1-123-45678-90', 'LNYUG', 'lola.ngyuen@customer.com') on DBD::DBM ok 1124 - prepare INSERT INTO CONTACT VALUES ( 4, 'Helge', 'Brunft', '+41-123-45678-09', 'HBRUN', 'helge.brunft@external-dc.at') on DBD::DBM ok 1125 - execute INSERT INTO CONTACT VALUES ( 4, 'Helge', 'Brunft', '+41-123-45678-09', 'HBRUN', 'helge.brunft@external-dc.at') on DBD::DBM ok 1126 - prepare CREATE TABLE NM_LANDSCAPE (id INT, ls_id INT, obj_id INT, obj_type INT) on DBD::DBM ok 1127 - execute CREATE TABLE NM_LANDSCAPE (id INT, ls_id INT, obj_id INT, obj_type INT) on DBD::DBM ok 1128 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 1, 1, 1, 2) on DBD::DBM ok 1129 - execute INSERT INTO NM_LANDSCAPE VALUES ( 1, 1, 1, 2) on DBD::DBM ok 1130 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 2, 1, 2, 2) on DBD::DBM ok 1131 - execute INSERT INTO NM_LANDSCAPE VALUES ( 2, 1, 2, 2) on DBD::DBM ok 1132 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 3, 3, 3, 2) on DBD::DBM ok 1133 - execute INSERT INTO NM_LANDSCAPE VALUES ( 3, 3, 3, 2) on DBD::DBM ok 1134 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 4, 3, 4, 2) on DBD::DBM ok 1135 - execute INSERT INTO NM_LANDSCAPE VALUES ( 4, 3, 4, 2) on DBD::DBM ok 1136 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 5, 2, 5, 2) on DBD::DBM ok 1137 - execute INSERT INTO NM_LANDSCAPE VALUES ( 5, 2, 5, 2) on DBD::DBM ok 1138 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 6, 2, 6, 2) on DBD::DBM ok 1139 - execute INSERT INTO NM_LANDSCAPE VALUES ( 6, 2, 6, 2) on DBD::DBM ok 1140 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 7, 2, 7, 2) on DBD::DBM ok 1141 - execute INSERT INTO NM_LANDSCAPE VALUES ( 7, 2, 7, 2) on DBD::DBM ok 1142 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 8, 2, 8, 2) on DBD::DBM ok 1143 - execute INSERT INTO NM_LANDSCAPE VALUES ( 8, 2, 8, 2) on DBD::DBM ok 1144 - prepare INSERT INTO NM_LANDSCAPE VALUES ( 9, 3, 9, 2) on DBD::DBM ok 1145 - execute INSERT INTO NM_LANDSCAPE VALUES ( 9, 3, 9, 2) on DBD::DBM ok 1146 - prepare INSERT INTO NM_LANDSCAPE VALUES (10, 3,10, 2) on DBD::DBM ok 1147 - execute INSERT INTO NM_LANDSCAPE VALUES (10, 3,10, 2) on DBD::DBM ok 1148 - prepare INSERT INTO NM_LANDSCAPE VALUES (11, 1, 1, 1) on DBD::DBM ok 1149 - execute INSERT INTO NM_LANDSCAPE VALUES (11, 1, 1, 1) on DBD::DBM ok 1150 - prepare INSERT INTO NM_LANDSCAPE VALUES (12, 2, 2, 1) on DBD::DBM ok 1151 - execute INSERT INTO NM_LANDSCAPE VALUES (12, 2, 2, 1) on DBD::DBM ok 1152 - prepare INSERT INTO NM_LANDSCAPE VALUES (13, 2, 2, 3) on DBD::DBM ok 1153 - execute INSERT INTO NM_LANDSCAPE VALUES (13, 2, 2, 3) on DBD::DBM ok 1154 - prepare INSERT INTO NM_LANDSCAPE VALUES (14, 3, 1, 3) on DBD::DBM ok 1155 - execute INSERT INTO NM_LANDSCAPE VALUES (14, 3, 1, 3) on DBD::DBM ok 1156 - prepare CREATE TABLE APPL_CONTACT (id INT, contact_id INT, appl_id INT, contact_type CHAR) on DBD::DBM ok 1157 - execute CREATE TABLE APPL_CONTACT (id INT, contact_id INT, appl_id INT, contact_type CHAR) on DBD::DBM ok 1158 - prepare INSERT INTO APPL_CONTACT VALUES (1, 3, 1, 'OWNER') on DBD::DBM ok 1159 - execute INSERT INTO APPL_CONTACT VALUES (1, 3, 1, 'OWNER') on DBD::DBM ok 1160 - prepare INSERT INTO APPL_CONTACT VALUES (2, 3, 2, 'OWNER') on DBD::DBM ok 1161 - execute INSERT INTO APPL_CONTACT VALUES (2, 3, 2, 'OWNER') on DBD::DBM ok 1162 - prepare INSERT INTO APPL_CONTACT VALUES (3, 4, 3, 'ADMIN') on DBD::DBM ok 1163 - execute INSERT INTO APPL_CONTACT VALUES (3, 4, 3, 'ADMIN') on DBD::DBM ok 1164 - prepare INSERT INTO APPL_CONTACT VALUES (4, 4, 4, 'ADMIN') on DBD::DBM ok 1165 - execute INSERT INTO APPL_CONTACT VALUES (4, 4, 4, 'ADMIN') on DBD::DBM ok 1166 - prepare INSERT INTO APPL_CONTACT VALUES (5, 4, 5, 'ADMIN') on DBD::DBM ok 1167 - execute INSERT INTO APPL_CONTACT VALUES (5, 4, 5, 'ADMIN') on DBD::DBM ok 1168 - prepare INSERT INTO APPL_CONTACT VALUES (6, 4, 6, 'ADMIN') on DBD::DBM ok 1169 - execute INSERT INTO APPL_CONTACT VALUES (6, 4, 6, 'ADMIN') on DBD::DBM ok 1170 - prepare SELECT pname,sname FROM Prof NATURAL JOIN Subject using DBD::DBM ok 1171 - execute SELECT pname,sname FROM Prof NATURAL JOIN Subject using DBD::DBM ok 1172 - NATURAL JOIN - with named columns in select list ok 1173 - prepare SELECT * FROM Prof NATURAL JOIN Subject using DBD::DBM ok 1174 - execute SELECT * FROM Prof NATURAL JOIN Subject using DBD::DBM ok 1175 - NATURAL JOIN - with select list = * ok 1176 - prepare SELECT UPPER(pname) AS P,Prof.pid,pname,sname FROM Prof NATURAL JOIN Subject using DBD::DBM ok 1177 - execute SELECT UPPER(pname) AS P,Prof.pid,pname,sname FROM Prof NATURAL JOIN Subject using DBD::DBM ok 1178 - NATURAL JOIN - with computed columns ok 1179 - prepare SELECT UPPER(pname) AS P,pid,pname,sname FROM Prof NATURAL JOIN Subject using DBD::DBM ok 1180 - execute SELECT UPPER(pname) AS P,pid,pname,sname FROM Prof NATURAL JOIN Subject using DBD::DBM ok 1181 - NATURAL JOIN - with no specifier on join column ok 1182 - prepare SELECT UPPER(pname) AS P,pid,pname,sname FROM Prof JOIN Subject using (pid) using DBD::DBM ok 1183 - execute SELECT UPPER(pname) AS P,pid,pname,sname FROM Prof JOIN Subject using (pid) using DBD::DBM ok 1184 - INNER JOIN - with no specifier on join column ok 1185 - prepare SELECT * FROM Prof LEFT JOIN Subject USING(pid) using DBD::DBM ok 1186 - execute SELECT * FROM Prof LEFT JOIN Subject USING(pid) using DBD::DBM ok 1187 - LEFT JOIN ok 1188 - prepare SELECT pid,pname,sname FROM Prof LEFT JOIN Subject USING(pid) using DBD::DBM ok 1189 - execute SELECT pid,pname,sname FROM Prof LEFT JOIN Subject USING(pid) using DBD::DBM ok 1190 - LEFT JOIN - enumerated columns ok 1191 - prepare SELECT subject.pid,pname,sname FROM Prof LEFT JOIN Subject USING(pid) using DBD::DBM ok 1192 - execute SELECT subject.pid,pname,sname FROM Prof LEFT JOIN Subject USING(pid) using DBD::DBM ok 1193 - LEFT JOIN - perversely intentionally mis-enumerated columns ok 1194 - prepare SELECT subject.pid, pname, sname FROM prof LEFT JOIN subject USING(pid) using DBD::DBM ok 1195 - execute SELECT subject.pid, pname, sname FROM prof LEFT JOIN subject USING(pid) using DBD::DBM ok 1196 - LEFT JOIN - lower case keywords ok 1197 - prepare SELECT * FROM Prof RIGHT JOIN Subject USING(pid) using DBD::DBM ok 1198 - execute SELECT * FROM Prof RIGHT JOIN Subject USING(pid) using DBD::DBM ok 1199 - RIGHT JOIN ok 1200 - prepare SELECT pid,sname,pname FROM Prof RIGHT JOIN Subject USING(pid) using DBD::DBM ok 1201 - execute SELECT pid,sname,pname FROM Prof RIGHT JOIN Subject USING(pid) using DBD::DBM ok 1202 - RIGHT JOIN - enumerated columns ok 1203 - prepare SELECT * FROM Prof FULL JOIN Subject USING(pid) using DBD::DBM ok 1204 - execute SELECT * FROM Prof FULL JOIN Subject USING(pid) using DBD::DBM ok 1205 - FULL JOIN ok 1206 - prepare SELECT * FROM Prof AS P,Subject AS S WHERE P.pid=S.pid using DBD::DBM ok 1207 - execute SELECT * FROM Prof AS P,Subject AS S WHERE P.pid=S.pid using DBD::DBM ok 1208 - IMPLICIT JOIN - two tables ok 1209 - prepare SELECT * # FROM Prof AS P,Subject AS S,Room AS R # WHERE P.pid=S.pid # AND P.pid=R.pid using DBD::DBM ok 1210 - execute SELECT * # FROM Prof AS P,Subject AS S,Room AS R # WHERE P.pid=S.pid # AND P.pid=R.pid using DBD::DBM ok 1211 - IMPLICIT JOIN - three tables ok 1212 - prepare SELECT * FROM author NATURAL JOIN book using DBD::DBM ok 1213 - execute SELECT * FROM author NATURAL JOIN book using DBD::DBM ok 1214 - Columns in NATURAL JOIN - on unique id's with select list = * ok 1215 - NATURAL JOIN - on unique id's with select list = * ok 1216 - prepare SELECT * FROM t1 CROSS JOIN t2 using DBD::DBM ok 1217 - execute SELECT * FROM t1 CROSS JOIN t2 using DBD::DBM ok 1218 - Columns in CROSS JOIN with select list = * ok 1219 - CROSS JOIN with select list = * ok 1220 - prepare SELECT * FROM t1 INNER JOIN t2 ON t1.num = t2.num using DBD::DBM ok 1221 - execute SELECT * FROM t1 INNER JOIN t2 ON t1.num = t2.num using DBD::DBM ok 1222 - Columns in INNER JOIN with select list = * ok 1223 - INNER JOIN with select list = * ok 1224 - prepare SELECT * FROM t1 INNER JOIN t2 USING (num) using DBD::DBM ok 1225 - execute SELECT * FROM t1 INNER JOIN t2 USING (num) using DBD::DBM ok 1226 - Columns in INNER JOINS (USING) with select list = * ok 1227 - INNER JOINS (USING) with select list = * ok 1228 - prepare SELECT * FROM t1 NATURAL INNER JOIN t2 using DBD::DBM ok 1229 - execute SELECT * FROM t1 NATURAL INNER JOIN t2 using DBD::DBM ok 1230 - Columns in INNER JOINS (NATURAL) with select list = * ok 1231 - INNER JOINS (NATURAL) with select list = * ok 1232 - prepare SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num using DBD::DBM ok 1233 - execute SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num using DBD::DBM ok 1234 - Columns in LEFT JOINS (using ON condition) with select list = * ok 1235 - LEFT JOINS (using ON condition) with select list = * ok 1236 - prepare SELECT * FROM t1 LEFT JOIN t2 USING (num) using DBD::DBM ok 1237 - execute SELECT * FROM t1 LEFT JOIN t2 USING (num) using DBD::DBM ok 1238 - Columns in LEFT JOINS (USING (num) condition) with select list = * ok 1239 - LEFT JOINS (USING (num) condition) with select list = * ok 1240 - prepare SELECT * FROM t1 RIGHT JOIN t2 ON t1.num = t2.num using DBD::DBM ok 1241 - execute SELECT * FROM t1 RIGHT JOIN t2 ON t1.num = t2.num using DBD::DBM ok 1242 - Columns in Right Joins (using ON condition) with select list = * ok 1243 - Right Joins (using ON condition) with select list = * ok 1244 - prepare SELECT * FROM t2 LEFT JOIN t1 ON t1.num = t2.num using DBD::DBM ok 1245 - execute SELECT * FROM t2 LEFT JOIN t1 ON t1.num = t2.num using DBD::DBM ok 1246 - Columns in Left Joins (reverse former Right Join) with select list = * ok 1247 - Left Joins (reverse former Right Join) with select list = * ok 1248 - prepare SELECT * FROM t1 FULL JOIN t2 ON t1.num = t2.num using DBD::DBM ok 1249 - execute SELECT * FROM t1 FULL JOIN t2 ON t1.num = t2.num using DBD::DBM ok 1250 - Columns in Full Joins (using ON condition) with select list = * ok 1251 - Full Joins (using ON condition) with select list = * # break here ok 1252 - prepare SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num AND t2.wert = 'xxx' using DBD::DBM # TODO Analyze ok 1253 - execute SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num AND t2.wert = 'xxx' using DBD::DBM # TODO Analyze ok 1254 - Columns in Left Joins (using ON t1.num = t2.num AND t2.wert = "xxx") with select list = * # TODO Analyze not ok 1255 - Left Joins (using ON t1.num = t2.num AND t2.wert = "xxx") with select list = * # TODO Analyze # Failed (TODO) test 'Left Joins (using ON t1.num = t2.num AND t2.wert = "xxx") with select list = *' # at t/08join.t line 675. # Structures begin differing at: # $got->[2][2] = '3' # $expected->[2][2] = undef # break here ok 1256 - prepare SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num WHERE (t2.wert = 'xxx' OR t2.wert IS NULL) using DBD::DBM # TODO Analyze ok 1257 - execute SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num WHERE (t2.wert = 'xxx' OR t2.wert IS NULL) using DBD::DBM # TODO Analyze ok 1258 - Columns in Left Joins (using ON t1.num = t2.num WHERE (t2.wert = "xxx" OR t2.wert IS NULL)) with select list = * # TODO Analyze not ok 1259 - Left Joins (using ON t1.num = t2.num WHERE (t2.wert = "xxx" OR t2.wert IS NULL)) with select list = * # TODO Analyze # Failed (TODO) test 'Left Joins (using ON t1.num = t2.num WHERE (t2.wert = "xxx" OR t2.wert IS NULL)) with select list = *' # at t/08join.t line 675. # Structures begin differing at: # $got->[2] = Does not exist # $expected->[2] = ARRAY(0x100e43688) ok 1260 - prepare SELECT applname, appluniq, version, nodename # FROM APPL, PREC, NODE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id using DBD::DBM ok 1261 - execute SELECT applname, appluniq, version, nodename # FROM APPL, PREC, NODE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id using DBD::DBM ok 1262 - DEFAULT INNER (1) with named columns ok 1263 - prepare SELECT applname, appluniq, version, landscapename, nodename # FROM APPL, PREC, NODE, LANDSCAPE, NM_LANDSCAPE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND NM_LANDSCAPE.obj_id=APPL.id # AND NM_LANDSCAPE.obj_type=1 # AND NM_LANDSCAPE.ls_id=LANDSCAPE.id using DBD::DBM ok 1264 - execute SELECT applname, appluniq, version, landscapename, nodename # FROM APPL, PREC, NODE, LANDSCAPE, NM_LANDSCAPE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND NM_LANDSCAPE.obj_id=APPL.id # AND NM_LANDSCAPE.obj_type=1 # AND NM_LANDSCAPE.ls_id=LANDSCAPE.id using DBD::DBM ok 1265 - DEFAULT INNER (2) with named columns ok 1266 - prepare SELECT applname, appluniq, version, surname, familyname, phone, nodename # FROM APPL, PREC, NODE, CONTACT, APPL_CONTACT # WHERE appl_type='CUPS' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND APPL_CONTACT.appl_id=APPL.id # AND APPL_CONTACT.contact_id=CONTACT.id # AND PREC.PRECEDENCE=1 # ORDER BY appluniq DESC, applname ASC using DBD::DBM ok 1267 - execute SELECT applname, appluniq, version, surname, familyname, phone, nodename # FROM APPL, PREC, NODE, CONTACT, APPL_CONTACT # WHERE appl_type='CUPS' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND APPL_CONTACT.appl_id=APPL.id # AND APPL_CONTACT.contact_id=CONTACT.id # AND PREC.PRECEDENCE=1 # ORDER BY appluniq DESC, applname ASC using DBD::DBM ok 1268 - DEFAULT INNER (3) with named columns ok 1269 - prepare SELECT DISTINCT applname, appluniq, version, surname, familyname, phone, nodename # FROM APPL, PREC, NODE, CONTACT, APPL_CONTACT # WHERE appl_type='CUPS' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND APPL_CONTACT.appl_id=APPL.id # AND APPL_CONTACT.contact_id=CONTACT.id # ORDER BY applname, appluniq, nodename using DBD::DBM ok 1270 - execute SELECT DISTINCT applname, appluniq, version, surname, familyname, phone, nodename # FROM APPL, PREC, NODE, CONTACT, APPL_CONTACT # WHERE appl_type='CUPS' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id # AND APPL_CONTACT.appl_id=APPL.id # AND APPL_CONTACT.contact_id=CONTACT.id # ORDER BY applname, appluniq, nodename using DBD::DBM ok 1271 - DEFAULT INNER (4) with named columns ok 1272 - prepare SELECT CONCAT('[% NOW %]') AS "timestamp", applname, appluniq, version, nodename # FROM APPL, PREC, NODE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id using DBD::DBM ok 1273 - execute SELECT CONCAT('[% NOW %]') AS "timestamp", applname, appluniq, version, nodename # FROM APPL, PREC, NODE # WHERE appl_type LIKE '%DB' # AND APPL.id=PREC.appl_id # AND PREC.node_id=NODE.id using DBD::DBM ok 1274 - DEFAULT INNER (5) with named columns # break here ok 1275 - prepare SELECT pname, sname, rname # FROM Prof p # JOIN Subject s # ON p.pid = s.pid # JOIN Room r # ON p.pid = r.pid # using DBD::DBM # TODO Not supported yet! ok 1276 - execute SELECT pname, sname, rname # FROM Prof p # JOIN Subject s # ON p.pid = s.pid # JOIN Room r # ON p.pid = r.pid # using DBD::DBM fails # TODO Not supported yet! ok 1277 - Complex INNER JOIN # TODO Not supported yet! # break here ok 1278 - prepare SELECT pname, sname, rname # FROM Prof p # JOIN Subject s USING (pid) # JOIN Room r USING (pid) # using DBD::DBM fails # TODO Not supported yet! ok 1279 - Complex INNER JOIN (using) # TODO Not supported yet! # break here ok 1280 - prepare SELECT pname, sname, rname # FROM Prof NATURAL JOIN Subject NATURAL JOIN Room # using DBD::DBM fails # TODO Not supported yet! ok 1281 - Complex NATURAL JOIN # TODO Not supported yet! # break here ok 1282 - prepare SELECT pname, sname, rname # FROM Prof p # LEFT JOIN Subject s # ON p.pid = s.pid # LEFT JOIN Room r # ON p.pid = r.pid # using DBD::DBM # TODO Not supported yet! ok 1283 - execute SELECT pname, sname, rname # FROM Prof p # LEFT JOIN Subject s # ON p.pid = s.pid # LEFT JOIN Room r # ON p.pid = r.pid # using DBD::DBM fails # TODO Not supported yet! ok 1284 - Complex LEFT JOIN # TODO Not supported yet! 1..1284 ok t/09ops.t ....... 1..18 SQL::Statement v.1.409 ok 1 - unknwon type ok 2 - create type ok 3 - user-defined type ok 4 - known type ok 5 - drop type ok 6 - unknown type ok 7 - unknown keyword ok 8 - create keyword ok 9 - user-defined keyword ok 10 - known keyword ok 11 - drop keyword ok 12 - keyword as identifier ok 13 - unknown operator ok 14 - create operator ok 15 - user-defined operator ok 16 - known operator ok 17 - drop operator ok 18 - unkown operator ok t/10limit.t ..... 1..2 SQL::Statement v.1.409 ok 1 - limit with order by ok 2 - limit without order by ok t/12eval.t ...... 1..13 SQL::Statement v.1.409 ok 1 - eval row() ok 2 - eval column() ok 3 - eval params($val) ok 4 - eval params() ok 5 - eval column($tbl,$col) ok 6 - ram seek(bad whence) ok 7 - ram seek(bad index) ok 8 - ram seek(pos=2) ok 9 - $function->type ok 10 - $function->name ok 11 - $column->type ok 12 - function validate - no sub ok 13 - function validate ok t/14parse.t ..... ok 1 - sanity check ok 2 - '<>' without spaces ok 3 - '<=' without spaces ok 4 - '>=' without spaces 1..4 ok t/17quoting.t ... 1..44 ok 1 - use SQL::Statement; ok 2 - use SQL::Parser; ok 3 - CREATE TEMP TABLE "TBL WITH SPACES" (id INT, "COLUMN WITH SPACES" CHAR, "SET" INT) ok 4 - INSERT INTO "TBL WITH SPACES" VALUES (1, 'foo', 1) ok 5 - INSERT INTO "TBL WITH SPACES" VALUES (2, 'bar', 0) ok 6 - Parsing SELECT "TBL WITH SPACES"."COLUMN WITH SPACES" ...: ok 7 - SELECTED 1 row ok 8 - got 'foo' ok 9 - Parsing SELECT "COLUMN WITH SPACES" ...: ok 10 - SELECTED 1 row ok 11 - got 'foo' ok 12 - Parsing SELECT "COLUMN WITH SPACES" AS CWS ...: ok 13 - SELECTED 1 row ok 14 - got 'foo' ok 15 - CREATE TEMP TABLE T1 (id INT, "COLUMN WITH SPACES" CHAR, "SET" INT) ok 16 - # INSERT INTO T1 VALUES (1, 'foo', 1) ok 17 - # INSERT INTO T1 VALUES (2, 'bar', 0) # ok 18 - Parsing SELECT T1."COLUMN WITH SPACES" ...: ok 19 - SELECTED 1 row ok 20 - got 'foo' ok 21 - Parsing SELECT "COLUMN WITH SPACES" ...: ok 22 - SELECTED 1 row ok 23 - got 'foo' ok 24 - Parsing SELECT "COLUMN WITH SPACES" AS CWS ...: ok 25 - SELECTED 1 row ok 26 - got 'foo' ok 27 - CREATE TEMP TABLE "TBL WITH SPACES" (id INT, CWS CHAR, "SET" INT) ok 28 - # INSERT INTO "TBL WITH SPACES" VALUES (1, 'foo', 1) ok 29 - # INSERT INTO "TBL WITH SPACES" VALUES (2, 'bar', 0) # ok 30 - Parsing SELECT "TBL WITH SPACES".CWS ...: ok 31 - SELECTED 1 row ok 32 - got 'foo' ok 33 - Parsing SELECT CWS ...: ok 34 - SELECTED 1 row ok 35 - got 'foo' ok 36 - CREATE TEMP TABLE T1 (id INT, CWS CHAR, "SET" INT) ok 37 - # INSERT INTO T1 VALUES (1, 'foo', 1) ok 38 - # INSERT INTO T1 VALUES (2, 'bar', 0) # ok 39 - Parsing SELECT CWS ... WHERE "SET"=0: ok 40 - SELECTED 1 row ok 41 - got 'bar' ok 42 - Parsing SELECT "SET" ...: ok 43 - SELECTED 1 row ok 44 - got '0' for "SET" ok t/23dialects.t .. 1..2 ok 1 ok 2 ok All tests successful. Test Summary Report ------------------- t/06virtual.t (Wstat: 0 Tests: 2626 Failed: 0) TODO passed: 565-567, 1220-1222, 1877-1879, 2534-2536 t/08join.t (Wstat: 0 Tests: 1284 Failed: 0) TODO passed: 289-291, 293-295, 314, 316, 318, 321, 610-612 614-616, 635, 637, 639, 642, 931-933, 935-937 956, 958, 960, 963, 1252-1254, 1256-1258 1277, 1279, 1281, 1284 Files=14, Tests=6280, 21 wallclock secs ( 0.83 usr 0.10 sys + 14.76 cusr 1.22 csys = 16.91 CPU) Result: PASS REHSACK/SQL-Statement-1.409.tar.gz make test TEST_VERBOSE=1 -- OK Jens Rehsack <rehsack@cpan.org> SQL parsing and processing engine >>> (cd /Users/fly1600/cpanfly-5.16/var/cpan/build/SQL-Statement-1.409-HsNhn9 && tar cvf - SQL-Statement-1.409.ppd blib) | gzip -c >/Users/fly1600/cpanfly-5.16/var/REPO/R/RE/REHSACK/SQL-Statement-1.409.tar.gz SQL-Statement-1.409.ppd blib/ blib/lib/ blib/lib/SQL/ blib/lib/SQL/Dialects/ blib/lib/SQL/Dialects/ANSI.pm blib/lib/SQL/Dialects/AnyData.pm blib/lib/SQL/Dialects/CSV.pm blib/lib/SQL/Dialects/Role.pm blib/lib/SQL/Eval.pm blib/lib/SQL/Parser.pm blib/lib/SQL/Statement/ blib/lib/SQL/Statement/Embed.pod blib/lib/SQL/Statement/Function.pm blib/lib/SQL/Statement/Functions.pm blib/lib/SQL/Statement/GetInfo.pm blib/lib/SQL/Statement/Operation.pm blib/lib/SQL/Statement/Placeholder.pm blib/lib/SQL/Statement/RAM.pm blib/lib/SQL/Statement/Roadmap.pod blib/lib/SQL/Statement/Structure.pod blib/lib/SQL/Statement/Syntax.pod blib/lib/SQL/Statement/Term.pm blib/lib/SQL/Statement/TermFactory.pm blib/lib/SQL/Statement/Util.pm blib/lib/SQL/Statement.pm blib/man3/ blib/man3/SQL::Dialects::ANSI.3 blib/man3/SQL::Dialects::AnyData.3 blib/man3/SQL::Dialects::CSV.3 blib/man3/SQL::Dialects::Role.3 blib/man3/SQL::Eval.3 blib/man3/SQL::Parser.3 blib/man3/SQL::Statement.3 blib/man3/SQL::Statement::Embed.3 blib/man3/SQL::Statement::Function.3 blib/man3/SQL::Statement::Functions.3 blib/man3/SQL::Statement::GetInfo.3 blib/man3/SQL::Statement::Operation.3 blib/man3/SQL::Statement::Placeholder.3 blib/man3/SQL::Statement::RAM.3 blib/man3/SQL::Statement::Roadmap.3 blib/man3/SQL::Statement::Structure.3 blib/man3/SQL::Statement::Syntax.3 blib/man3/SQL::Statement::Term.3 blib/man3/SQL::Statement::TermFactory.3 blib/man3/SQL::Statement::Util.3 >>> mv /Users/fly1600/cpanfly-5.16/var/cpan/build/SQL-Statement-1.409-HsNhn9/SQL-Statement-1.409.ppd /Users/fly1600/cpanfly-5.16/var/REPO/R/RE/REHSACK Finished 2016-04-08T03:18:45