Diff of the two buildlogs: -- --- b1/build.log 2024-05-07 22:33:58.694970324 +0000 +++ b2/build.log 2024-05-07 22:34:50.284773417 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Tue May 7 10:33:07 -12 2024 -I: pbuilder-time-stamp: 1715121187 +I: Current time: Tue Jun 10 18:57:01 +14 2025 +I: pbuilder-time-stamp: 1749531421 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -25,51 +25,83 @@ dpkg-source: info: unpacking libsql-statement-perl_1.414-1.debian.tar.xz I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/4052782/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/721883/tmp/hooks/D01_modify_environment starting +debug: Running on infom02-amd64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Jun 10 04:57 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/721883/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/721883/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='amd64' - DEBIAN_FRONTEND='noninteractive' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="21" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") + BASH_VERSION='5.2.21(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=amd64 + DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='amd64' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='9a71680e5aa34af29b003ddec1ea1fa9' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='4052782' - PS1='# ' - PS2='> ' + INVOCATION_ID=f9c1381c122d46a3af373f6d05ef4791 + LANG=C + LANGUAGE=et_EE:et + LC_ALL=C + MACHTYPE=x86_64-pc-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=721883 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.VhuTJ8Lz/pbuilderrc_JbzH --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.VhuTJ8Lz/b1 --logfile b1/build.log libsql-statement-perl_1.414-1.dsc' - SUDO_GID='109' - SUDO_UID='104' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.VhuTJ8Lz/pbuilderrc_2CiK --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.VhuTJ8Lz/b2 --logfile b2/build.log libsql-statement-perl_1.414-1.dsc' + SUDO_GID=109 + SUDO_UID=104 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' I: uname -a - Linux infom01-amd64 6.1.0-21-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.90-1 (2024-05-03) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.6.13+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.6.13-1~bpo12+1 (2024-02-15) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 May 6 07:42 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/4052782/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Jun 8 14:05 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/721883/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -169,7 +201,7 @@ Get: 44 http://deb.debian.org/debian unstable/main amd64 libtest-pod-coverage-perl all 1.10-3 [14.9 kB] Get: 45 http://deb.debian.org/debian unstable/main amd64 libtest-pod-perl all 1.52-3 [12.6 kB] Get: 46 http://deb.debian.org/debian unstable/main amd64 libtext-soundex-perl amd64 3.05-2+b3 [14.0 kB] -Fetched 20.2 MB in 0s (59.2 MB/s) +Fetched 20.2 MB in 0s (62.8 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19699 files and directories currently installed.) @@ -370,7 +402,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/libsql-statement-perl-1.414/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../libsql-statement-perl_1.414-1_source.changes +I: user script /srv/workspace/pbuilder/721883/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/721883/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/libsql-statement-perl-1.414/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../libsql-statement-perl_1.414-1_source.changes dpkg-buildpackage: info: source package libsql-statement-perl dpkg-buildpackage: info: source version 1.414-1 dpkg-buildpackage: info: source distribution unstable @@ -400,25 +436,25 @@ make -j12 make[1]: Entering directory '/build/reproducible-path/libsql-statement-perl-1.414' cp lib/SQL/Statement.pm blib/lib/SQL/Statement.pm +cp lib/SQL/Statement/TermFactory.pm blib/lib/SQL/Statement/TermFactory.pm +cp lib/SQL/Statement/Syntax.pod blib/lib/SQL/Statement/Syntax.pod cp lib/SQL/Statement/RAM.pm blib/lib/SQL/Statement/RAM.pm -cp lib/SQL/Statement/Operation.pm blib/lib/SQL/Statement/Operation.pm -cp lib/SQL/Statement/Term.pm blib/lib/SQL/Statement/Term.pm +cp lib/SQL/Dialects/AnyData.pm blib/lib/SQL/Dialects/AnyData.pm cp lib/SQL/Statement/Function.pm blib/lib/SQL/Statement/Function.pm -cp lib/SQL/Statement/Structure.pod blib/lib/SQL/Statement/Structure.pod -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/Embed.pod blib/lib/SQL/Statement/Embed.pod +cp lib/SQL/Dialects/ANSI.pm blib/lib/SQL/Dialects/ANSI.pm cp lib/SQL/Statement/Roadmap.pod blib/lib/SQL/Statement/Roadmap.pod +cp lib/SQL/Statement/Placeholder.pm blib/lib/SQL/Statement/Placeholder.pm +cp lib/SQL/Statement/Operation.pm blib/lib/SQL/Statement/Operation.pm +cp lib/SQL/Statement/GetInfo.pm blib/lib/SQL/Statement/GetInfo.pm +cp lib/SQL/Statement/Functions.pm blib/lib/SQL/Statement/Functions.pm +cp lib/SQL/Dialects/CSV.pm blib/lib/SQL/Dialects/CSV.pm +cp lib/SQL/Statement/Term.pm blib/lib/SQL/Statement/Term.pm cp lib/SQL/Statement/Util.pm blib/lib/SQL/Statement/Util.pm -cp lib/SQL/Dialects/AnyData.pm blib/lib/SQL/Dialects/AnyData.pm cp lib/SQL/Parser.pm blib/lib/SQL/Parser.pm -cp lib/SQL/Statement/Syntax.pod blib/lib/SQL/Statement/Syntax.pod -cp lib/SQL/Statement/TermFactory.pm blib/lib/SQL/Statement/TermFactory.pm -cp lib/SQL/Statement/Functions.pm blib/lib/SQL/Statement/Functions.pm +cp lib/SQL/Statement/Structure.pod blib/lib/SQL/Statement/Structure.pod cp lib/SQL/Dialects/Role.pm blib/lib/SQL/Dialects/Role.pm -cp lib/SQL/Statement/Placeholder.pm blib/lib/SQL/Statement/Placeholder.pm -cp lib/SQL/Statement/Embed.pod blib/lib/SQL/Statement/Embed.pod -cp lib/SQL/Statement/GetInfo.pm blib/lib/SQL/Statement/GetInfo.pm -cp lib/SQL/Dialects/ANSI.pm blib/lib/SQL/Dialects/ANSI.pm Manifying 20 pod documents make[1]: Leaving directory '/build/reproducible-path/libsql-statement-perl-1.414' dh_auto_test @@ -441,7 +477,7 @@ ok 5 - Parse "Junk" RaiseError=1 ok 6 - Execute RaiseError=1 ok 7 - Execute "SELECT * FROM nonexistant" has errstr -# Running tests for DBD::DBM +# Running tests for DBD::File ok 8 - Parse "Junk" RaiseError=0 (default) ok 9 - Execute function succeeded ok 10 - Execute function no errstr @@ -449,7 +485,7 @@ ok 12 - Parse "Junk" RaiseError=1 ok 13 - Execute RaiseError=1 ok 14 - Execute "SELECT * FROM nonexistant" has errstr -# Running tests for DBD::File +# Running tests for DBD::DBM ok 15 - Parse "Junk" RaiseError=0 (default) ok 16 - Execute function succeeded ok 17 - Execute function no errstr @@ -884,7 +920,7 @@ # Command SELECT # Num Pholders 1 # Columns -# Tables SQL::Statement::Table=HASH(0x5567f385b690),SQL::Statement::Table=HASH(0x5567f3866fc0) +# Tables SQL::Statement::Table=HASH(0x556ed96440a8),SQL::Statement::Table=HASH(0x556ed96a31a0) # Where op AND # Limit 2 # Offset 5 @@ -895,279 +931,279 @@ ok 280 - structure ok 281 - command ok 282 - distinct -ok 283 - parse ' /* DROP TABLE */' using DBD::File -ok 284 - parse 'DROP TABLE foo' using DBD::File -ok 285 - parse 'DROP TABLE foo CASCADE' using DBD::File -ok 286 - parse 'DROP TABLE foo RESTRICT' using DBD::File -ok 287 - parse ' /* DELETE */' using DBD::File -ok 288 - parse 'DELETE FROM foo' using DBD::File -ok 289 - parse 'DELETE FROM foo WHERE id < 7' using DBD::File -ok 290 - parse ' /* UPDATE */' using DBD::File -ok 291 - parse 'UPDATE foo SET bar = 7' using DBD::File -ok 292 - parse 'UPDATE foo SET bar = 7 WHERE id > 7' using DBD::File -ok 293 - parse ' /* INSERT */' using DBD::File -ok 294 - parse 'INSERT INTO foo VALUES ( 'baz', 7, NULL )' using DBD::File -ok 295 - parse 'INSERT INTO foo (col1,col2,col7) VALUES ( 'baz', 7, NULL )' using DBD::File -ok 296 - parse 'INSERT INTO foo VALUES ( now(), trim(lower(user)), curdate-1 )' using DBD::File -ok 297 - parse 'INSERT INTO foo VALUES ( 'smile :-),(-: twice)', ' \' ) ' )' using DBD::File -ok 298 - parse 'INSERT INTO foo VALUES (1,'row'),(2,'rows')' using DBD::File -ok 299 - parse ' /* CREATE TABLE */' using DBD::File -ok 300 - parse 'CREATE TABLE foo ( id INT )' using DBD::File -ok 301 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT)' using DBD::File -ok 302 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT) ON COMMIT DELETE ROWS' using DBD::File -ok 303 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT) ON COMMIT PRESERVE ROWS' using DBD::File -ok 304 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT)' using DBD::File -ok 305 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT) ON COMMIT DELETE ROWS' using DBD::File -ok 306 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT) ON COMMIT PRESERVE ROWS' using DBD::File -ok 307 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40) )' using DBD::File -ok 308 - parse 'CREATE TABLE foo ( id INTEGER UNIQUE, phrase VARCHAR(40) UNIQUE )' using DBD::File -ok 309 - parse 'CREATE TABLE foo ( id INTEGER PRIMARY KEY, phrase VARCHAR(40) UNIQUE )' using DBD::File -ok 310 - parse 'CREATE TABLE foo ( id INTEGER PRIMARY KEY, phrase VARCHAR(40) NOT NULL )' using DBD::File -ok 311 - parse 'CREATE TABLE foo ( id INTEGER NOT NULL, phrase VARCHAR(40) NOT NULL )' using DBD::File -ok 312 - parse 'CREATE TABLE foo ( id INTEGER UNIQUE NOT NULL, phrase VARCHAR(40) )' using DBD::File -ok 313 - parse 'CREATE TABLE foo ( phrase CHARACTER VARYING(255) )' using DBD::File -ok 314 - parse 'CREATE TABLE foo ( phrase NUMERIC(4,6) )' using DBD::File -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::File -ok 316 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40), PRIMARY KEY ( "id" ), FOREIGN KEY ("id", "phrase") REFERENCES "bar" ("id2", "phrase2"))' using DBD::File -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::File -ok 318 - parse ' /* JOINS */' using DBD::File -ok 319 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL INNER JOIN zUpper' using DBD::File -ok 320 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL LEFT JOIN zUpper' using DBD::File -ok 321 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL RIGHT JOIN zUpper' using DBD::File -ok 322 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL FULL JOIN zUpper' using DBD::File -ok 323 - parse 'SELECT Lnum,Llet,Ulet FROM zLower INNER JOIN zUpper ON Lnum = Unum' using DBD::File -ok 324 - parse 'SELECT Lnum,Llet,Ulet FROM zLower LEFT JOIN zUpper ON Lnum = Unum' using DBD::File -ok 325 - parse 'SELECT Lnum,Llet,Ulet FROM zLower RIGHT JOIN zUpper ON Lnum = Unum' using DBD::File -ok 326 - parse 'SELECT Lnum,Llet,Ulet FROM zLower FULL JOIN zUpper ON Lnum = Unum' using DBD::File -ok 327 - parse 'SELECT Lnum,Llet,Ulet FROM zLower INNER JOIN zUpper USING(num)' using DBD::File -ok 328 - parse 'SELECT Lnum,Llet,Ulet FROM zLower LEFT JOIN zUpper USING(num)' using DBD::File -ok 329 - parse 'SELECT Lnum,Llet,Ulet FROM zLower RIGHT JOIN zUpper USING(num)' using DBD::File -ok 330 - parse 'SELECT Lnum,Llet,Ulet FROM zLower FULL JOIN zUpper USING(num)' using DBD::File -ok 331 - parse 'SELECT Lnum,Llet,Ulet FROM zLower,zUpper WHERE Lnum = Unum' using DBD::File -ok 332 - parse 'SELECT * FROM zLower NATURAL INNER JOIN zUpper' using DBD::File -ok 333 - parse 'SELECT * FROM zLower NATURAL LEFT JOIN zUpper' using DBD::File -ok 334 - parse 'SELECT * FROM zLower NATURAL RIGHT JOIN zUpper' using DBD::File -ok 335 - parse 'SELECT * FROM zLower NATURAL FULL JOIN zUpper' using DBD::File -ok 336 - parse 'SELECT * FROM zLower INNER JOIN zUpper ON Lnum = Unum' using DBD::File -ok 337 - parse 'SELECT * FROM zLower LEFT JOIN zUpper ON Lnum = Unum' using DBD::File -ok 338 - parse 'SELECT * FROM zLower RIGHT JOIN zUpper ON Lnum = Unum' using DBD::File -ok 339 - parse 'SELECT * FROM zLower FULL JOIN zUpper ON Lnum = Unum' using DBD::File -ok 340 - parse 'SELECT * FROM zLower INNER JOIN zUpper USING(num)' using DBD::File -ok 341 - parse 'SELECT * FROM zLower LEFT JOIN zUpper USING(num)' using DBD::File -ok 342 - parse 'SELECT * FROM zLower RIGHT JOIN zUpper USING(num)' using DBD::File -ok 343 - parse 'SELECT * FROM zLower FULL JOIN zUpper USING(num)' using DBD::File -ok 344 - parse 'SELECT * FROM zLower,zUpper WHERE Lnum = Unum' using DBD::File -ok 345 - parse ' /* SELECT COLUMNS */' using DBD::File -ok 346 - parse 'SELECT id, phrase FROM foo' using DBD::File -ok 347 - parse 'SELECT * FROM foo' using DBD::File -ok 348 - parse 'SELECT DISTINCT * FROM foo' using DBD::File -ok 349 - parse 'SELECT ALL * FROM foo' using DBD::File -ok 350 - parse 'SELECT A.*,B.* FROM A,B WHERE A.id=B.id' using DBD::File -ok 351 - parse ' /* SET FUNCTIONS */' using DBD::File -ok 352 - parse 'SELECT MAX(foo) FROM bar' using DBD::File -ok 353 - parse 'SELECT MIN(foo) FROM bar' using DBD::File -ok 354 - parse 'SELECT AVG(foo) FROM bar' using DBD::File -ok 355 - parse 'SELECT SUM(foo) FROM bar' using DBD::File -ok 356 - parse 'SELECT COUNT(foo) FROM foo' using DBD::File -ok 357 - parse 'SELECT COUNT(*) FROM foo' using DBD::File -ok 358 - parse 'SELECT SUM(DISTINCT foo) FROM bar' using DBD::File -ok 359 - parse 'SELECT SUM(ALL foo) FROM bar' using DBD::File -ok 360 - parse ' /* ORDER BY */' using DBD::File -ok 361 - parse 'SELECT * FROM foo ORDER BY bar' using DBD::File -ok 362 - parse 'SELECT * FROM foo ORDER BY bar, baz' using DBD::File -ok 363 - parse 'SELECT * FROM foo ORDER BY bar DESC' using DBD::File -ok 364 - parse 'SELECT * FROM foo ORDER BY bar ASC' using DBD::File -ok 365 - parse ' /* LIMIT */' using DBD::File -ok 366 - parse 'SELECT * FROM foo LIMIT 5' using DBD::File -ok 367 - parse 'SELECT * FROM foo LIMIT 0, 5' using DBD::File -ok 368 - parse 'SELECT * FROM foo LIMIT 5, 10' using DBD::File -ok 369 - parse '/* DATE/TIME FUNCTIONS */' using DBD::File -ok 370 - parse 'SELECT CURRENT_DATE()' using DBD::File -ok 371 - parse 'SELECT CURRENT_TIME()' using DBD::File -ok 372 - parse 'SELECT CURRENT_TIMESTAMP()' using DBD::File -ok 373 - parse 'SELECT CURDATE()' using DBD::File -ok 374 - parse 'SELECT CURTIME()' using DBD::File -ok 375 - parse 'SELECT NOW()' using DBD::File -ok 376 - parse 'SELECT UNIX_TIMESTAMP() ' using DBD::File -ok 377 - parse 'SELECT CURRENT_TIME(2)' using DBD::File -ok 378 - parse 'SELECT CURRENT_TIMESTAMP(2)' using DBD::File -ok 379 - parse 'SELECT CURTIME(2)' using DBD::File -ok 380 - parse 'SELECT NOW(2)' using DBD::File -ok 381 - parse 'SELECT UNIX_TIMESTAMP(2)' using DBD::File -ok 382 - parse ' /* STRING FUNCTIONS */' using DBD::File -ok 383 - parse 'SELECT * FROM foo WHERE ASCII(status) = 65' using DBD::File -ok 384 - parse 'SELECT * FROM foo WHERE CHAR(code) = 'A'' using DBD::File -ok 385 - parse 'SELECT * FROM foo WHERE CHAR(chr1,chr2,chr3) = 'ABC'' using DBD::File -ok 386 - parse 'SELECT * FROM foo WHERE BIT_LENGTH(str) = 27' using DBD::File -ok 387 - parse 'SELECT * FROM foo WHERE CHARACTER_LENGTH(str) = 6' using DBD::File -ok 388 - parse 'SELECT * FROM foo WHERE CHAR_LENGTH(str) = 6' using DBD::File -ok 389 - parse 'SELECT * FROM foo WHERE COALESCE(NULL, status) = 'bar'' using DBD::File -ok 390 - parse 'SELECT * FROM foo WHERE NVL(NULL, status) = 'bar'' using DBD::File -ok 391 - parse 'SELECT * FROM foo WHERE IFNULL(NULL, status) = 'bar'' using DBD::File -ok 392 - parse 'SELECT * FROM foo WHERE CONCAT(str1, str2) = 'bar'' using DBD::File -ok 393 - parse 'SELECT * FROM foo WHERE DECODE(color,'White','W','Red','R','B') = 'W'' using DBD::File -ok 394 - parse 'SELECT * FROM foo WHERE INSERT(str1, 4, 5, str2) = 'foobarland'' using DBD::File -ok 395 - parse 'SELECT * FROM foo WHERE LEFT(phrase) = 'bar'' using DBD::File -ok 396 - parse 'SELECT * FROM foo WHERE RIGHT(phrase) = 'bar'' using DBD::File -ok 397 - parse 'SELECT * FROM foo WHERE LOCATE(str1, str2) = 2' using DBD::File -ok 398 - parse 'SELECT * FROM foo WHERE LOCATE(str1, str2, 3) = 5' using DBD::File -ok 399 - parse 'SELECT * FROM foo WHERE POSITION(str1, str2) = 2' using DBD::File -ok 400 - parse 'SELECT * FROM foo WHERE POSITION(str1, str2, 3) = 5' using DBD::File -ok 401 - parse 'SELECT * FROM foo WHERE LOWER(phrase) = 'bar'' using DBD::File -ok 402 - parse 'SELECT * FROM foo WHERE UPPER(phrase) = 'BAR'' using DBD::File -ok 403 - parse 'SELECT * FROM foo WHERE LCASE(phrase) = 'BAR'' using DBD::File -ok 404 - parse 'SELECT * FROM foo WHERE UCASE(phrase) = 'bar'' using DBD::File -ok 405 - parse 'SELECT * FROM foo WHERE LTRIM(str) = 'bar'' using DBD::File -ok 406 - parse 'SELECT * FROM foo WHERE RTRIM(str) = 'bar'' using DBD::File -ok 407 - parse 'SELECT * FROM foo WHERE OCTET_LENGTH(str) = 12' using DBD::File -ok 408 - parse 'SELECT * FROM foo WHERE REGEX(phrase, '/EF/i') = TRUE' using DBD::File -ok 409 - parse 'SELECT * FROM foo WHERE REPEAT(status, 3) = 'AAA'' using DBD::File -ok 410 - parse 'SELECT * FROM foo WHERE REPLACE(phrase, 's/z(.+)ky//i') = 'bar'' using DBD::File -ok 411 - parse 'SELECT * FROM foo WHERE SUBSTITUTE(phrase, 's/z(.+)ky//i') = 'bar'' using DBD::File -ok 412 - parse 'SELECT * FROM foo WHERE SOUNDEX(name1, name2) = TRUE' using DBD::File -ok 413 - parse 'SELECT * FROM foo WHERE SPACE(num) = ' '' using DBD::File -ok 414 - parse 'SELECT * FROM foo WHERE blat = SUBSTRING(bar FROM 3 FOR 6)' using DBD::File -ok 415 - parse 'SELECT * FROM foo WHERE blat = SUBSTRING(bar FROM 3)' using DBD::File -ok 416 - parse 'SELECT * FROM foo WHERE blat = SUBSTR(bar, 3, 6)' using DBD::File -ok 417 - parse 'SELECT * FROM foo WHERE blat = SUBSTR(bar, 3)' using DBD::File -ok 418 - parse 'SELECT * FROM foo WHERE blat = TRANSLATE(bar, set1, set2)' using DBD::File -ok 419 - parse 'SELECT * FROM foo WHERE TRIM( str ) = 'bar'' using DBD::File -ok 420 - parse 'SELECT * FROM foo WHERE TRIM( LEADING FROM str ) = 'bar'' using DBD::File -ok 421 - parse 'SELECT * FROM foo WHERE TRIM( TRAILING FROM str ) = 'bar'' using DBD::File -ok 422 - parse 'SELECT * FROM foo WHERE TRIM( BOTH FROM str ) = 'bar'' using DBD::File -ok 423 - parse 'SELECT * FROM foo WHERE TRIM( LEADING ';' FROM str ) = 'bar'' using DBD::File -ok 424 - parse 'SELECT * FROM foo WHERE TRIM( UPPER(phrase) ) = 'bar'' using DBD::File -ok 425 - parse 'SELECT * FROM foo WHERE TRIM( LOWER(phrase) ) = 'bar'' using DBD::File -ok 426 - parse 'UPDATE foo SET bar='baz', bop=7, bump=bar+8, blat=SUBSTRING(bar FROM 3 FOR 6)' using DBD::File -ok 427 - parse ' /* NUMERIC FUNCTIONS */' using DBD::File -ok 428 - parse 'SELECT * FROM bar WHERE ABS(-4) = 4' using DBD::File -ok 429 - parse 'SELECT * FROM bar WHERE CEILING(-4.5) = -4' using DBD::File -ok 430 - parse 'SELECT * FROM bar WHERE CEIL(-4.9) = -4' using DBD::File -ok 431 - parse 'SELECT * FROM bar WHERE FLOOR(4.999999999999) = 4' using DBD::File -ok 432 - parse 'SELECT * FROM bar WHERE LOG(6) = LOG10(6)' using DBD::File -ok 433 - parse 'SELECT * FROM bar WHERE LN(1) = EXP(1)' using DBD::File -ok 434 - parse 'SELECT * FROM bar WHERE MOD(8, 5) = 3' using DBD::File -ok 435 - parse 'SELECT * FROM bar WHERE POWER(2, 4) = 16' using DBD::File -ok 436 - parse 'SELECT * FROM bar WHERE POW(2, 4) = 16' using DBD::File -ok 437 - parse 'SELECT * FROM bar WHERE RAND(2) = 0' using DBD::File -ok 438 - parse 'SELECT * FROM bar WHERE RAND(2, UNIX_TIMESTAMP()) = 0' using DBD::File -ok 439 - parse 'SELECT * FROM bar WHERE ROUND(4.999999999999) = 5' using DBD::File -ok 440 - parse 'SELECT * FROM bar WHERE ROUND(4.542222222222, 1) = 4.5' using DBD::File -ok 441 - parse 'SELECT * FROM bar WHERE SIGN(-25.5) = -1' using DBD::File -ok 442 - parse 'SELECT * FROM bar WHERE SIGN(53645) = 1' using DBD::File -ok 443 - parse 'SELECT * FROM bar WHERE SIGN(0) = 0' using DBD::File -ok 444 - parse 'SELECT * FROM bar WHERE SIGN(NULL) = NULL' using DBD::File -ok 445 - parse 'SELECT * FROM bar WHERE SQRT(64) = 8' using DBD::File -ok 446 - parse 'SELECT * FROM bar WHERE TRUNCATE(4.999999999999) = 4' using DBD::File -ok 447 - parse 'SELECT * FROM bar WHERE TRUNC(-4.9) = -4' using DBD::File -ok 448 - parse 'SELECT * FROM bar WHERE TRUNCATE(4.934, 1) = 4.9' using DBD::File -ok 449 - parse 'SELECT * FROM bar WHERE TRUNC(-4.99999, 1) = -4.9' using DBD::File -ok 450 - parse ' /* TRIGONOMETRIC FUNCTIONS */' using DBD::File -ok 451 - parse 'SELECT * FROM test WHERE ACOS(x)' using DBD::File -ok 452 - parse 'SELECT * FROM test WHERE ACOSEC(x)' using DBD::File -ok 453 - parse 'SELECT * FROM test WHERE ACOSECH(x)' using DBD::File -ok 454 - parse 'SELECT * FROM test WHERE ACOSH(x)' using DBD::File -ok 455 - parse 'SELECT * FROM test WHERE ACOT(x)' using DBD::File -ok 456 - parse 'SELECT * FROM test WHERE ACOTAN(x)' using DBD::File -ok 457 - parse 'SELECT * FROM test WHERE ACOTANH(x)' using DBD::File -ok 458 - parse 'SELECT * FROM test WHERE ACOTH(x)' using DBD::File -ok 459 - parse 'SELECT * FROM test WHERE ACSC(x)' using DBD::File -ok 460 - parse 'SELECT * FROM test WHERE ACSCH(x)' using DBD::File -ok 461 - parse 'SELECT * FROM test WHERE ASEC(x)' using DBD::File -ok 462 - parse 'SELECT * FROM test WHERE ASECH(x)' using DBD::File -ok 463 - parse 'SELECT * FROM test WHERE ASIN(x)' using DBD::File -ok 464 - parse 'SELECT * FROM test WHERE ASINH(x)' using DBD::File -ok 465 - parse 'SELECT * FROM test WHERE ATAN(x)' using DBD::File -ok 466 - parse 'SELECT * FROM test WHERE ATAN2(y, x)' using DBD::File -ok 467 - parse 'SELECT * FROM test WHERE ATANH(x)' using DBD::File -ok 468 - parse 'SELECT * FROM test WHERE COS(x)' using DBD::File -ok 469 - parse 'SELECT * FROM test WHERE COSEC(x)' using DBD::File -ok 470 - parse 'SELECT * FROM test WHERE COSECH(x)' using DBD::File -ok 471 - parse 'SELECT * FROM test WHERE COSH(x)' using DBD::File -ok 472 - parse 'SELECT * FROM test WHERE COT(x)' using DBD::File -ok 473 - parse 'SELECT * FROM test WHERE COTAN(x)' using DBD::File -ok 474 - parse 'SELECT * FROM test WHERE COTANH(x)' using DBD::File -ok 475 - parse 'SELECT * FROM test WHERE COTH(x)' using DBD::File -ok 476 - parse 'SELECT * FROM test WHERE CSC(x)' using DBD::File -ok 477 - parse 'SELECT * FROM test WHERE CSCH(x)' using DBD::File -ok 478 - parse 'SELECT * FROM test WHERE DEG2DEG(deg)' using DBD::File -ok 479 - parse 'SELECT * FROM test WHERE RAD2RAD(rad)' using DBD::File -ok 480 - parse 'SELECT * FROM test WHERE GRAD2GRAD(grad)' using DBD::File -ok 481 - parse 'SELECT * FROM test WHERE DEG2GRAD(deg)' using DBD::File -ok 482 - parse 'SELECT * FROM test WHERE DEG2RAD(deg)' using DBD::File -ok 483 - parse 'SELECT * FROM test WHERE GRAD2DEG(grad)' using DBD::File -ok 484 - parse 'SELECT * FROM test WHERE GRAD2RAD(grad)' using DBD::File -ok 485 - parse 'SELECT * FROM test WHERE RAD2DEG(rad)' using DBD::File -ok 486 - parse 'SELECT * FROM test WHERE RAD2GRAD(rad)' using DBD::File -ok 487 - parse 'SELECT * FROM test WHERE DEGREES(rad)' using DBD::File -ok 488 - parse 'SELECT * FROM test WHERE RADIANS(deg)' using DBD::File -ok 489 - parse 'SELECT * FROM test WHERE DEG2DEG(deg, TRUE)' using DBD::File -ok 490 - parse 'SELECT * FROM test WHERE RAD2RAD(rad, TRUE)' using DBD::File -ok 491 - parse 'SELECT * FROM test WHERE GRAD2GRAD(grad, TRUE)' using DBD::File -ok 492 - parse 'SELECT * FROM test WHERE DEG2GRAD(deg, TRUE)' using DBD::File -ok 493 - parse 'SELECT * FROM test WHERE DEG2RAD(deg, TRUE)' using DBD::File -ok 494 - parse 'SELECT * FROM test WHERE GRAD2DEG(grad, TRUE)' using DBD::File -ok 495 - parse 'SELECT * FROM test WHERE GRAD2RAD(grad, TRUE)' using DBD::File -ok 496 - parse 'SELECT * FROM test WHERE RAD2DEG(rad, TRUE)' using DBD::File -ok 497 - parse 'SELECT * FROM test WHERE RAD2GRAD(rad, TRUE)' using DBD::File -ok 498 - parse 'SELECT * FROM test WHERE DEGREES(rad, TRUE)' using DBD::File -ok 499 - parse 'SELECT * FROM test WHERE RADIANS(deg, TRUE)' using DBD::File -ok 500 - parse 'SELECT * FROM test WHERE PI()' using DBD::File -ok 501 - parse 'SELECT * FROM test WHERE SEC(x)' using DBD::File -ok 502 - parse 'SELECT * FROM test WHERE SECH(x)' using DBD::File -ok 503 - parse 'SELECT * FROM test WHERE SIN(x)' using DBD::File -ok 504 - parse 'SELECT * FROM test WHERE SINH(x)' using DBD::File -ok 505 - parse 'SELECT * FROM test WHERE TAN(x)' using DBD::File -ok 506 - parse 'SELECT * FROM test WHERE TANH(x)' using DBD::File -ok 507 - parse ' /* SYSTEM FUNCTIONS */' using DBD::File -ok 508 - parse 'SELECT * FROM ztable WHERE DBNAME() = foobar' using DBD::File -ok 509 - parse 'SELECT * FROM ztable WHERE USERNAME() = foobar' using DBD::File -ok 510 - parse 'SELECT * FROM ztable WHERE USER() = foobar' using DBD::File -ok 511 - parse ' /* TABLE NAME ALIASES */' using DBD::File -ok 512 - parse 'SELECT * FROM test as T1' using DBD::File -ok 513 - parse 'SELECT * FROM test T1' using DBD::File -ok 514 - parse 'SELECT T1.id, T2.num FROM test as T1 JOIN test2 as T2 USING(id)' using DBD::File -ok 515 - parse 'SELECT id FROM test as T1 WHERE T1.num < 7' using DBD::File -ok 516 - parse 'SELECT id FROM test as T1 ORDER BY T1.num' using DBD::File -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::File -ok 518 - parse ' /* NUMERIC EXPRESSIONS */' using DBD::File -ok 519 - parse 'SELECT * FROM foo WHERE 1 = 0 AND baz < (6*foo+11-r)' using DBD::File -ok 520 - parse ' /* CASE OF IDENTIFIERS */' using DBD::File -ok 521 - parse 'SELECT ID, phRase FROM tEst AS tE WHERE te.id < 3 ORDER BY TE.phrasE' using DBD::File -ok 522 - parse ' /* PARENS */' using DBD::File -ok 523 - parse 'SELECT * FROM ztable WHERE NOT data IN ('one','two')' using DBD::File -ok 524 - parse 'SELECT * from ztable WHERE (aaa > 'AAA')' using DBD::File -ok 525 - parse 'SELECT * from ztable WHERE sev = 50 OR sev = 60' using DBD::File -ok 526 - parse 'SELECT * from ztable WHERE (sev = 50 OR sev = 60)' using DBD::File -ok 527 - parse 'SELECT * from ztable WHERE sev IN (50,60)' using DBD::File -ok 528 - parse 'SELECT * from ztable WHERE rc > 200 AND ( sev IN(50,60) )' using DBD::File -ok 529 - parse 'SELECT * FROM ztable WHERE data NOT IN ('one','two')' using DBD::File -ok 530 - parse 'SELECT * from ztable WHERE (aaa > 'AAA') AND (zzz < 'ZZZ')' using DBD::File -ok 531 - parse 'SELECT * from ztable WHERE (sev IN(50,60))' using DBD::File -ok 532 - parse ' /* NOT */' using DBD::File -ok 533 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND bop = 7 OR NOT blat = bar' using DBD::File -ok 534 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND NOT bop = 7 OR NOT blat = bar' using DBD::File -ok 535 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND NOT bop = 7 OR blat IS NOT NULL' using DBD::File -ok 536 - parse ' /* IN */' using DBD::File -ok 537 - parse 'SELECT * FROM bar WHERE foo IN ('aa','ab','ba','bb')' using DBD::File -ok 538 - parse 'SELECT * FROM bar WHERE foo IN (3.14,2.72,1.41,9.81)' using DBD::File -ok 539 - parse 'SELECT * FROM bar WHERE foo NOT IN ('aa','ab','ba','bb')' using DBD::File -ok 540 - parse 'SELECT * FROM bar WHERE foo NOT IN (3.14,2.72,1.41,9.81)' using DBD::File -ok 541 - parse ' /* BETWEEN */' using DBD::File -ok 542 - parse 'SELECT * FROM bar WHERE foo BETWEEN ('aa','bb')' using DBD::File -ok 543 - parse 'SELECT * FROM bar WHERE foo BETWEEN (1.41,9.81)' using DBD::File -ok 544 - parse 'SELECT * FROM bar WHERE foo NOT BETWEEN ('aa','bb')' using DBD::File -ok 545 - parse 'SELECT * FROM bar WHERE foo NOT BETWEEN (1.41,9.81)' using DBD::File -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::File # TODO Analyze failures -not ok 547 - 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' +ok 283 - parse ' /* DROP TABLE */' using DBD::DBM +ok 284 - parse 'DROP TABLE foo' using DBD::DBM +ok 285 - parse 'DROP TABLE foo CASCADE' using DBD::DBM +ok 286 - parse 'DROP TABLE foo RESTRICT' using DBD::DBM +ok 287 - parse ' /* DELETE */' using DBD::DBM +ok 288 - parse 'DELETE FROM foo' using DBD::DBM +ok 289 - parse 'DELETE FROM foo WHERE id < 7' using DBD::DBM +ok 290 - parse ' /* UPDATE */' using DBD::DBM +ok 291 - parse 'UPDATE foo SET bar = 7' using DBD::DBM +ok 292 - parse 'UPDATE foo SET bar = 7 WHERE id > 7' using DBD::DBM +ok 293 - parse ' /* INSERT */' using DBD::DBM +ok 294 - parse 'INSERT INTO foo VALUES ( 'baz', 7, NULL )' using DBD::DBM +ok 295 - parse 'INSERT INTO foo (col1,col2,col7) VALUES ( 'baz', 7, NULL )' using DBD::DBM +ok 296 - parse 'INSERT INTO foo VALUES ( now(), trim(lower(user)), curdate-1 )' using DBD::DBM +ok 297 - parse 'INSERT INTO foo VALUES ( 'smile :-),(-: twice)', ' \' ) ' )' using DBD::DBM +ok 298 - parse 'INSERT INTO foo VALUES (1,'row'),(2,'rows')' using DBD::DBM +ok 299 - parse ' /* CREATE TABLE */' using DBD::DBM +ok 300 - parse 'CREATE TABLE foo ( id INT )' using DBD::DBM +ok 301 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT)' using DBD::DBM +ok 302 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT) ON COMMIT DELETE ROWS' using DBD::DBM +ok 303 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT) ON COMMIT PRESERVE ROWS' using DBD::DBM +ok 304 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT)' using DBD::DBM +ok 305 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT) ON COMMIT DELETE ROWS' using DBD::DBM +ok 306 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT) ON COMMIT PRESERVE ROWS' using DBD::DBM +ok 307 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40) )' using DBD::DBM +ok 308 - parse 'CREATE TABLE foo ( id INTEGER UNIQUE, phrase VARCHAR(40) UNIQUE )' using DBD::DBM +ok 309 - parse 'CREATE TABLE foo ( id INTEGER PRIMARY KEY, phrase VARCHAR(40) UNIQUE )' using DBD::DBM +ok 310 - parse 'CREATE TABLE foo ( id INTEGER PRIMARY KEY, phrase VARCHAR(40) NOT NULL )' using DBD::DBM +ok 311 - parse 'CREATE TABLE foo ( id INTEGER NOT NULL, phrase VARCHAR(40) NOT NULL )' using DBD::DBM +ok 312 - parse 'CREATE TABLE foo ( id INTEGER UNIQUE NOT NULL, phrase VARCHAR(40) )' using DBD::DBM +ok 313 - parse 'CREATE TABLE foo ( phrase CHARACTER VARYING(255) )' using DBD::DBM +ok 314 - parse 'CREATE TABLE foo ( phrase NUMERIC(4,6) )' using DBD::DBM +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::DBM +ok 316 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40), PRIMARY KEY ( "id" ), FOREIGN KEY ("id", "phrase") REFERENCES "bar" ("id2", "phrase2"))' using DBD::DBM +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::DBM +ok 318 - parse ' /* JOINS */' using DBD::DBM +ok 319 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL INNER JOIN zUpper' using DBD::DBM +ok 320 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL LEFT JOIN zUpper' using DBD::DBM +ok 321 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL RIGHT JOIN zUpper' using DBD::DBM +ok 322 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL FULL JOIN zUpper' using DBD::DBM +ok 323 - parse 'SELECT Lnum,Llet,Ulet FROM zLower INNER JOIN zUpper ON Lnum = Unum' using DBD::DBM +ok 324 - parse 'SELECT Lnum,Llet,Ulet FROM zLower LEFT JOIN zUpper ON Lnum = Unum' using DBD::DBM +ok 325 - parse 'SELECT Lnum,Llet,Ulet FROM zLower RIGHT JOIN zUpper ON Lnum = Unum' using DBD::DBM +ok 326 - parse 'SELECT Lnum,Llet,Ulet FROM zLower FULL JOIN zUpper ON Lnum = Unum' using DBD::DBM +ok 327 - parse 'SELECT Lnum,Llet,Ulet FROM zLower INNER JOIN zUpper USING(num)' using DBD::DBM +ok 328 - parse 'SELECT Lnum,Llet,Ulet FROM zLower LEFT JOIN zUpper USING(num)' using DBD::DBM +ok 329 - parse 'SELECT Lnum,Llet,Ulet FROM zLower RIGHT JOIN zUpper USING(num)' using DBD::DBM +ok 330 - parse 'SELECT Lnum,Llet,Ulet FROM zLower FULL JOIN zUpper USING(num)' using DBD::DBM +ok 331 - parse 'SELECT Lnum,Llet,Ulet FROM zLower,zUpper WHERE Lnum = Unum' using DBD::DBM +ok 332 - parse 'SELECT * FROM zLower NATURAL INNER JOIN zUpper' using DBD::DBM +ok 333 - parse 'SELECT * FROM zLower NATURAL LEFT JOIN zUpper' using DBD::DBM +ok 334 - parse 'SELECT * FROM zLower NATURAL RIGHT JOIN zUpper' using DBD::DBM +ok 335 - parse 'SELECT * FROM zLower NATURAL FULL JOIN zUpper' using DBD::DBM +ok 336 - parse 'SELECT * FROM zLower INNER JOIN zUpper ON Lnum = Unum' using DBD::DBM +ok 337 - parse 'SELECT * FROM zLower LEFT JOIN zUpper ON Lnum = Unum' using DBD::DBM +ok 338 - parse 'SELECT * FROM zLower RIGHT JOIN zUpper ON Lnum = Unum' using DBD::DBM +ok 339 - parse 'SELECT * FROM zLower FULL JOIN zUpper ON Lnum = Unum' using DBD::DBM +ok 340 - parse 'SELECT * FROM zLower INNER JOIN zUpper USING(num)' using DBD::DBM +ok 341 - parse 'SELECT * FROM zLower LEFT JOIN zUpper USING(num)' using DBD::DBM +ok 342 - parse 'SELECT * FROM zLower RIGHT JOIN zUpper USING(num)' using DBD::DBM +ok 343 - parse 'SELECT * FROM zLower FULL JOIN zUpper USING(num)' using DBD::DBM +ok 344 - parse 'SELECT * FROM zLower,zUpper WHERE Lnum = Unum' using DBD::DBM +ok 345 - parse ' /* SELECT COLUMNS */' using DBD::DBM +ok 346 - parse 'SELECT id, phrase FROM foo' using DBD::DBM +ok 347 - parse 'SELECT * FROM foo' using DBD::DBM +ok 348 - parse 'SELECT DISTINCT * FROM foo' using DBD::DBM +ok 349 - parse 'SELECT ALL * FROM foo' using DBD::DBM +ok 350 - parse 'SELECT A.*,B.* FROM A,B WHERE A.id=B.id' using DBD::DBM +ok 351 - parse ' /* SET FUNCTIONS */' using DBD::DBM +ok 352 - parse 'SELECT MAX(foo) FROM bar' using DBD::DBM +ok 353 - parse 'SELECT MIN(foo) FROM bar' using DBD::DBM +ok 354 - parse 'SELECT AVG(foo) FROM bar' using DBD::DBM +ok 355 - parse 'SELECT SUM(foo) FROM bar' using DBD::DBM +ok 356 - parse 'SELECT COUNT(foo) FROM foo' using DBD::DBM +ok 357 - parse 'SELECT COUNT(*) FROM foo' using DBD::DBM +ok 358 - parse 'SELECT SUM(DISTINCT foo) FROM bar' using DBD::DBM +ok 359 - parse 'SELECT SUM(ALL foo) FROM bar' using DBD::DBM +ok 360 - parse ' /* ORDER BY */' using DBD::DBM +ok 361 - parse 'SELECT * FROM foo ORDER BY bar' using DBD::DBM +ok 362 - parse 'SELECT * FROM foo ORDER BY bar, baz' using DBD::DBM +ok 363 - parse 'SELECT * FROM foo ORDER BY bar DESC' using DBD::DBM +ok 364 - parse 'SELECT * FROM foo ORDER BY bar ASC' using DBD::DBM +ok 365 - parse ' /* LIMIT */' using DBD::DBM +ok 366 - parse 'SELECT * FROM foo LIMIT 5' using DBD::DBM +ok 367 - parse 'SELECT * FROM foo LIMIT 0, 5' using DBD::DBM +ok 368 - parse 'SELECT * FROM foo LIMIT 5, 10' using DBD::DBM +ok 369 - parse '/* DATE/TIME FUNCTIONS */' using DBD::DBM +ok 370 - parse 'SELECT CURRENT_DATE()' using DBD::DBM +ok 371 - parse 'SELECT CURRENT_TIME()' using DBD::DBM +ok 372 - parse 'SELECT CURRENT_TIMESTAMP()' using DBD::DBM +ok 373 - parse 'SELECT CURDATE()' using DBD::DBM +ok 374 - parse 'SELECT CURTIME()' using DBD::DBM +ok 375 - parse 'SELECT NOW()' using DBD::DBM +ok 376 - parse 'SELECT UNIX_TIMESTAMP() ' using DBD::DBM +ok 377 - parse 'SELECT CURRENT_TIME(2)' using DBD::DBM +ok 378 - parse 'SELECT CURRENT_TIMESTAMP(2)' using DBD::DBM +ok 379 - parse 'SELECT CURTIME(2)' using DBD::DBM +ok 380 - parse 'SELECT NOW(2)' using DBD::DBM +ok 381 - parse 'SELECT UNIX_TIMESTAMP(2)' using DBD::DBM +ok 382 - parse ' /* STRING FUNCTIONS */' using DBD::DBM +ok 383 - parse 'SELECT * FROM foo WHERE ASCII(status) = 65' using DBD::DBM +ok 384 - parse 'SELECT * FROM foo WHERE CHAR(code) = 'A'' using DBD::DBM +ok 385 - parse 'SELECT * FROM foo WHERE CHAR(chr1,chr2,chr3) = 'ABC'' using DBD::DBM +ok 386 - parse 'SELECT * FROM foo WHERE BIT_LENGTH(str) = 27' using DBD::DBM +ok 387 - parse 'SELECT * FROM foo WHERE CHARACTER_LENGTH(str) = 6' using DBD::DBM +ok 388 - parse 'SELECT * FROM foo WHERE CHAR_LENGTH(str) = 6' using DBD::DBM +ok 389 - parse 'SELECT * FROM foo WHERE COALESCE(NULL, status) = 'bar'' using DBD::DBM +ok 390 - parse 'SELECT * FROM foo WHERE NVL(NULL, status) = 'bar'' using DBD::DBM +ok 391 - parse 'SELECT * FROM foo WHERE IFNULL(NULL, status) = 'bar'' using DBD::DBM +ok 392 - parse 'SELECT * FROM foo WHERE CONCAT(str1, str2) = 'bar'' using DBD::DBM +ok 393 - parse 'SELECT * FROM foo WHERE DECODE(color,'White','W','Red','R','B') = 'W'' using DBD::DBM +ok 394 - parse 'SELECT * FROM foo WHERE INSERT(str1, 4, 5, str2) = 'foobarland'' using DBD::DBM +ok 395 - parse 'SELECT * FROM foo WHERE LEFT(phrase) = 'bar'' using DBD::DBM +ok 396 - parse 'SELECT * FROM foo WHERE RIGHT(phrase) = 'bar'' using DBD::DBM +ok 397 - parse 'SELECT * FROM foo WHERE LOCATE(str1, str2) = 2' using DBD::DBM +ok 398 - parse 'SELECT * FROM foo WHERE LOCATE(str1, str2, 3) = 5' using DBD::DBM +ok 399 - parse 'SELECT * FROM foo WHERE POSITION(str1, str2) = 2' using DBD::DBM +ok 400 - parse 'SELECT * FROM foo WHERE POSITION(str1, str2, 3) = 5' using DBD::DBM +ok 401 - parse 'SELECT * FROM foo WHERE LOWER(phrase) = 'bar'' using DBD::DBM +ok 402 - parse 'SELECT * FROM foo WHERE UPPER(phrase) = 'BAR'' using DBD::DBM +ok 403 - parse 'SELECT * FROM foo WHERE LCASE(phrase) = 'BAR'' using DBD::DBM +ok 404 - parse 'SELECT * FROM foo WHERE UCASE(phrase) = 'bar'' using DBD::DBM +ok 405 - parse 'SELECT * FROM foo WHERE LTRIM(str) = 'bar'' using DBD::DBM +ok 406 - parse 'SELECT * FROM foo WHERE RTRIM(str) = 'bar'' using DBD::DBM +ok 407 - parse 'SELECT * FROM foo WHERE OCTET_LENGTH(str) = 12' using DBD::DBM +ok 408 - parse 'SELECT * FROM foo WHERE REGEX(phrase, '/EF/i') = TRUE' using DBD::DBM +ok 409 - parse 'SELECT * FROM foo WHERE REPEAT(status, 3) = 'AAA'' using DBD::DBM +ok 410 - parse 'SELECT * FROM foo WHERE REPLACE(phrase, 's/z(.+)ky//i') = 'bar'' using DBD::DBM +ok 411 - parse 'SELECT * FROM foo WHERE SUBSTITUTE(phrase, 's/z(.+)ky//i') = 'bar'' using DBD::DBM +ok 412 - parse 'SELECT * FROM foo WHERE SOUNDEX(name1, name2) = TRUE' using DBD::DBM +ok 413 - parse 'SELECT * FROM foo WHERE SPACE(num) = ' '' using DBD::DBM +ok 414 - parse 'SELECT * FROM foo WHERE blat = SUBSTRING(bar FROM 3 FOR 6)' using DBD::DBM +ok 415 - parse 'SELECT * FROM foo WHERE blat = SUBSTRING(bar FROM 3)' using DBD::DBM +ok 416 - parse 'SELECT * FROM foo WHERE blat = SUBSTR(bar, 3, 6)' using DBD::DBM +ok 417 - parse 'SELECT * FROM foo WHERE blat = SUBSTR(bar, 3)' using DBD::DBM +ok 418 - parse 'SELECT * FROM foo WHERE blat = TRANSLATE(bar, set1, set2)' using DBD::DBM +ok 419 - parse 'SELECT * FROM foo WHERE TRIM( str ) = 'bar'' using DBD::DBM +ok 420 - parse 'SELECT * FROM foo WHERE TRIM( LEADING FROM str ) = 'bar'' using DBD::DBM +ok 421 - parse 'SELECT * FROM foo WHERE TRIM( TRAILING FROM str ) = 'bar'' using DBD::DBM +ok 422 - parse 'SELECT * FROM foo WHERE TRIM( BOTH FROM str ) = 'bar'' using DBD::DBM +ok 423 - parse 'SELECT * FROM foo WHERE TRIM( LEADING ';' FROM str ) = 'bar'' using DBD::DBM +ok 424 - parse 'SELECT * FROM foo WHERE TRIM( UPPER(phrase) ) = 'bar'' using DBD::DBM +ok 425 - parse 'SELECT * FROM foo WHERE TRIM( LOWER(phrase) ) = 'bar'' using DBD::DBM +ok 426 - parse 'UPDATE foo SET bar='baz', bop=7, bump=bar+8, blat=SUBSTRING(bar FROM 3 FOR 6)' using DBD::DBM +ok 427 - parse ' /* NUMERIC FUNCTIONS */' using DBD::DBM +ok 428 - parse 'SELECT * FROM bar WHERE ABS(-4) = 4' using DBD::DBM +ok 429 - parse 'SELECT * FROM bar WHERE CEILING(-4.5) = -4' using DBD::DBM +ok 430 - parse 'SELECT * FROM bar WHERE CEIL(-4.9) = -4' using DBD::DBM +ok 431 - parse 'SELECT * FROM bar WHERE FLOOR(4.999999999999) = 4' using DBD::DBM +ok 432 - parse 'SELECT * FROM bar WHERE LOG(6) = LOG10(6)' using DBD::DBM +ok 433 - parse 'SELECT * FROM bar WHERE LN(1) = EXP(1)' using DBD::DBM +ok 434 - parse 'SELECT * FROM bar WHERE MOD(8, 5) = 3' using DBD::DBM +ok 435 - parse 'SELECT * FROM bar WHERE POWER(2, 4) = 16' using DBD::DBM +ok 436 - parse 'SELECT * FROM bar WHERE POW(2, 4) = 16' using DBD::DBM +ok 437 - parse 'SELECT * FROM bar WHERE RAND(2) = 0' using DBD::DBM +ok 438 - parse 'SELECT * FROM bar WHERE RAND(2, UNIX_TIMESTAMP()) = 0' using DBD::DBM +ok 439 - parse 'SELECT * FROM bar WHERE ROUND(4.999999999999) = 5' using DBD::DBM +ok 440 - parse 'SELECT * FROM bar WHERE ROUND(4.542222222222, 1) = 4.5' using DBD::DBM +ok 441 - parse 'SELECT * FROM bar WHERE SIGN(-25.5) = -1' using DBD::DBM +ok 442 - parse 'SELECT * FROM bar WHERE SIGN(53645) = 1' using DBD::DBM +ok 443 - parse 'SELECT * FROM bar WHERE SIGN(0) = 0' using DBD::DBM +ok 444 - parse 'SELECT * FROM bar WHERE SIGN(NULL) = NULL' using DBD::DBM +ok 445 - parse 'SELECT * FROM bar WHERE SQRT(64) = 8' using DBD::DBM +ok 446 - parse 'SELECT * FROM bar WHERE TRUNCATE(4.999999999999) = 4' using DBD::DBM +ok 447 - parse 'SELECT * FROM bar WHERE TRUNC(-4.9) = -4' using DBD::DBM +ok 448 - parse 'SELECT * FROM bar WHERE TRUNCATE(4.934, 1) = 4.9' using DBD::DBM +ok 449 - parse 'SELECT * FROM bar WHERE TRUNC(-4.99999, 1) = -4.9' using DBD::DBM +ok 450 - parse ' /* TRIGONOMETRIC FUNCTIONS */' using DBD::DBM +ok 451 - parse 'SELECT * FROM test WHERE ACOS(x)' using DBD::DBM +ok 452 - parse 'SELECT * FROM test WHERE ACOSEC(x)' using DBD::DBM +ok 453 - parse 'SELECT * FROM test WHERE ACOSECH(x)' using DBD::DBM +ok 454 - parse 'SELECT * FROM test WHERE ACOSH(x)' using DBD::DBM +ok 455 - parse 'SELECT * FROM test WHERE ACOT(x)' using DBD::DBM +ok 456 - parse 'SELECT * FROM test WHERE ACOTAN(x)' using DBD::DBM +ok 457 - parse 'SELECT * FROM test WHERE ACOTANH(x)' using DBD::DBM +ok 458 - parse 'SELECT * FROM test WHERE ACOTH(x)' using DBD::DBM +ok 459 - parse 'SELECT * FROM test WHERE ACSC(x)' using DBD::DBM +ok 460 - parse 'SELECT * FROM test WHERE ACSCH(x)' using DBD::DBM +ok 461 - parse 'SELECT * FROM test WHERE ASEC(x)' using DBD::DBM +ok 462 - parse 'SELECT * FROM test WHERE ASECH(x)' using DBD::DBM +ok 463 - parse 'SELECT * FROM test WHERE ASIN(x)' using DBD::DBM +ok 464 - parse 'SELECT * FROM test WHERE ASINH(x)' using DBD::DBM +ok 465 - parse 'SELECT * FROM test WHERE ATAN(x)' using DBD::DBM +ok 466 - parse 'SELECT * FROM test WHERE ATAN2(y, x)' using DBD::DBM +ok 467 - parse 'SELECT * FROM test WHERE ATANH(x)' using DBD::DBM +ok 468 - parse 'SELECT * FROM test WHERE COS(x)' using DBD::DBM +ok 469 - parse 'SELECT * FROM test WHERE COSEC(x)' using DBD::DBM +ok 470 - parse 'SELECT * FROM test WHERE COSECH(x)' using DBD::DBM +ok 471 - parse 'SELECT * FROM test WHERE COSH(x)' using DBD::DBM +ok 472 - parse 'SELECT * FROM test WHERE COT(x)' using DBD::DBM +ok 473 - parse 'SELECT * FROM test WHERE COTAN(x)' using DBD::DBM +ok 474 - parse 'SELECT * FROM test WHERE COTANH(x)' using DBD::DBM +ok 475 - parse 'SELECT * FROM test WHERE COTH(x)' using DBD::DBM +ok 476 - parse 'SELECT * FROM test WHERE CSC(x)' using DBD::DBM +ok 477 - parse 'SELECT * FROM test WHERE CSCH(x)' using DBD::DBM +ok 478 - parse 'SELECT * FROM test WHERE DEG2DEG(deg)' using DBD::DBM +ok 479 - parse 'SELECT * FROM test WHERE RAD2RAD(rad)' using DBD::DBM +ok 480 - parse 'SELECT * FROM test WHERE GRAD2GRAD(grad)' using DBD::DBM +ok 481 - parse 'SELECT * FROM test WHERE DEG2GRAD(deg)' using DBD::DBM +ok 482 - parse 'SELECT * FROM test WHERE DEG2RAD(deg)' using DBD::DBM +ok 483 - parse 'SELECT * FROM test WHERE GRAD2DEG(grad)' using DBD::DBM +ok 484 - parse 'SELECT * FROM test WHERE GRAD2RAD(grad)' using DBD::DBM +ok 485 - parse 'SELECT * FROM test WHERE RAD2DEG(rad)' using DBD::DBM +ok 486 - parse 'SELECT * FROM test WHERE RAD2GRAD(rad)' using DBD::DBM +ok 487 - parse 'SELECT * FROM test WHERE DEGREES(rad)' using DBD::DBM +ok 488 - parse 'SELECT * FROM test WHERE RADIANS(deg)' using DBD::DBM +ok 489 - parse 'SELECT * FROM test WHERE DEG2DEG(deg, TRUE)' using DBD::DBM +ok 490 - parse 'SELECT * FROM test WHERE RAD2RAD(rad, TRUE)' using DBD::DBM +ok 491 - parse 'SELECT * FROM test WHERE GRAD2GRAD(grad, TRUE)' using DBD::DBM +ok 492 - parse 'SELECT * FROM test WHERE DEG2GRAD(deg, TRUE)' using DBD::DBM +ok 493 - parse 'SELECT * FROM test WHERE DEG2RAD(deg, TRUE)' using DBD::DBM +ok 494 - parse 'SELECT * FROM test WHERE GRAD2DEG(grad, TRUE)' using DBD::DBM +ok 495 - parse 'SELECT * FROM test WHERE GRAD2RAD(grad, TRUE)' using DBD::DBM +ok 496 - parse 'SELECT * FROM test WHERE RAD2DEG(rad, TRUE)' using DBD::DBM +ok 497 - parse 'SELECT * FROM test WHERE RAD2GRAD(rad, TRUE)' using DBD::DBM +ok 498 - parse 'SELECT * FROM test WHERE DEGREES(rad, TRUE)' using DBD::DBM +ok 499 - parse 'SELECT * FROM test WHERE RADIANS(deg, TRUE)' using DBD::DBM +ok 500 - parse 'SELECT * FROM test WHERE PI()' using DBD::DBM +ok 501 - parse 'SELECT * FROM test WHERE SEC(x)' using DBD::DBM +ok 502 - parse 'SELECT * FROM test WHERE SECH(x)' using DBD::DBM +ok 503 - parse 'SELECT * FROM test WHERE SIN(x)' using DBD::DBM +ok 504 - parse 'SELECT * FROM test WHERE SINH(x)' using DBD::DBM +ok 505 - parse 'SELECT * FROM test WHERE TAN(x)' using DBD::DBM +ok 506 - parse 'SELECT * FROM test WHERE TANH(x)' using DBD::DBM +ok 507 - parse ' /* SYSTEM FUNCTIONS */' using DBD::DBM +ok 508 - parse 'SELECT * FROM ztable WHERE DBNAME() = foobar' using DBD::DBM +ok 509 - parse 'SELECT * FROM ztable WHERE USERNAME() = foobar' using DBD::DBM +ok 510 - parse 'SELECT * FROM ztable WHERE USER() = foobar' using DBD::DBM +ok 511 - parse ' /* TABLE NAME ALIASES */' using DBD::DBM +ok 512 - parse 'SELECT * FROM test as T1' using DBD::DBM +ok 513 - parse 'SELECT * FROM test T1' using DBD::DBM +ok 514 - parse 'SELECT T1.id, T2.num FROM test as T1 JOIN test2 as T2 USING(id)' using DBD::DBM +ok 515 - parse 'SELECT id FROM test as T1 WHERE T1.num < 7' using DBD::DBM +ok 516 - parse 'SELECT id FROM test as T1 ORDER BY T1.num' using DBD::DBM +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::DBM +ok 518 - parse ' /* NUMERIC EXPRESSIONS */' using DBD::DBM +ok 519 - parse 'SELECT * FROM foo WHERE 1 = 0 AND baz < (6*foo+11-r)' using DBD::DBM +ok 520 - parse ' /* CASE OF IDENTIFIERS */' using DBD::DBM +ok 521 - parse 'SELECT ID, phRase FROM tEst AS tE WHERE te.id < 3 ORDER BY TE.phrasE' using DBD::DBM +ok 522 - parse ' /* PARENS */' using DBD::DBM +ok 523 - parse 'SELECT * FROM ztable WHERE NOT data IN ('one','two')' using DBD::DBM +ok 524 - parse 'SELECT * from ztable WHERE (aaa > 'AAA')' using DBD::DBM +ok 525 - parse 'SELECT * from ztable WHERE sev = 50 OR sev = 60' using DBD::DBM +ok 526 - parse 'SELECT * from ztable WHERE (sev = 50 OR sev = 60)' using DBD::DBM +ok 527 - parse 'SELECT * from ztable WHERE sev IN (50,60)' using DBD::DBM +ok 528 - parse 'SELECT * from ztable WHERE rc > 200 AND ( sev IN(50,60) )' using DBD::DBM +ok 529 - parse 'SELECT * FROM ztable WHERE data NOT IN ('one','two')' using DBD::DBM +ok 530 - parse 'SELECT * from ztable WHERE (aaa > 'AAA') AND (zzz < 'ZZZ')' using DBD::DBM +ok 531 - parse 'SELECT * from ztable WHERE (sev IN(50,60))' using DBD::DBM +ok 532 - parse ' /* NOT */' using DBD::DBM +ok 533 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND bop = 7 OR NOT blat = bar' using DBD::DBM +ok 534 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND NOT bop = 7 OR NOT blat = bar' using DBD::DBM +ok 535 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND NOT bop = 7 OR blat IS NOT NULL' using DBD::DBM +ok 536 - parse ' /* IN */' using DBD::DBM +ok 537 - parse 'SELECT * FROM bar WHERE foo IN ('aa','ab','ba','bb')' using DBD::DBM +ok 538 - parse 'SELECT * FROM bar WHERE foo IN (3.14,2.72,1.41,9.81)' using DBD::DBM +ok 539 - parse 'SELECT * FROM bar WHERE foo NOT IN ('aa','ab','ba','bb')' using DBD::DBM +ok 540 - parse 'SELECT * FROM bar WHERE foo NOT IN (3.14,2.72,1.41,9.81)' using DBD::DBM +ok 541 - parse ' /* BETWEEN */' using DBD::DBM +ok 542 - parse 'SELECT * FROM bar WHERE foo BETWEEN ('aa','bb')' using DBD::DBM +ok 543 - parse 'SELECT * FROM bar WHERE foo BETWEEN (1.41,9.81)' using DBD::DBM +ok 544 - parse 'SELECT * FROM bar WHERE foo NOT BETWEEN ('aa','bb')' using DBD::DBM +ok 545 - parse 'SELECT * FROM bar WHERE foo NOT BETWEEN (1.41,9.81)' using DBD::DBM +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::DBM # TODO Analyze failures +not ok 547 - 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 /usr/lib/x86_64-linux-gnu/perl5/5.38/DBI/DBD/SqlEngine.pm at 335. # -not ok 548 - 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' +not ok 548 - 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 = {}; @@ -1186,7 +1222,7 @@ # Command SELECT # Num Pholders 1 # Columns -# Tables SQL::Statement::Table=HASH(0x5567f38bb830),SQL::Statement::Table=HASH(0x5567f3866bb8) +# Tables SQL::Statement::Table=HASH(0x556ed9643b38),SQL::Statement::Table=HASH(0x556ed9643d78) # Where op AND # Limit 2 # Offset 5 @@ -1197,279 +1233,279 @@ 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 -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 -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' +ok 565 - parse ' /* DROP TABLE */' using DBD::File +ok 566 - parse 'DROP TABLE foo' using DBD::File +ok 567 - parse 'DROP TABLE foo CASCADE' using DBD::File +ok 568 - parse 'DROP TABLE foo RESTRICT' using DBD::File +ok 569 - parse ' /* DELETE */' using DBD::File +ok 570 - parse 'DELETE FROM foo' using DBD::File +ok 571 - parse 'DELETE FROM foo WHERE id < 7' using DBD::File +ok 572 - parse ' /* UPDATE */' using DBD::File +ok 573 - parse 'UPDATE foo SET bar = 7' using DBD::File +ok 574 - parse 'UPDATE foo SET bar = 7 WHERE id > 7' using DBD::File +ok 575 - parse ' /* INSERT */' using DBD::File +ok 576 - parse 'INSERT INTO foo VALUES ( 'baz', 7, NULL )' using DBD::File +ok 577 - parse 'INSERT INTO foo (col1,col2,col7) VALUES ( 'baz', 7, NULL )' using DBD::File +ok 578 - parse 'INSERT INTO foo VALUES ( now(), trim(lower(user)), curdate-1 )' using DBD::File +ok 579 - parse 'INSERT INTO foo VALUES ( 'smile :-),(-: twice)', ' \' ) ' )' using DBD::File +ok 580 - parse 'INSERT INTO foo VALUES (1,'row'),(2,'rows')' using DBD::File +ok 581 - parse ' /* CREATE TABLE */' using DBD::File +ok 582 - parse 'CREATE TABLE foo ( id INT )' using DBD::File +ok 583 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT)' using DBD::File +ok 584 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT) ON COMMIT DELETE ROWS' using DBD::File +ok 585 - parse 'CREATE LOCAL TEMPORARY TABLE foo (id INT) ON COMMIT PRESERVE ROWS' using DBD::File +ok 586 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT)' using DBD::File +ok 587 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT) ON COMMIT DELETE ROWS' using DBD::File +ok 588 - parse 'CREATE GLOBAL TEMPORARY TABLE foo (id INT) ON COMMIT PRESERVE ROWS' using DBD::File +ok 589 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40) )' using DBD::File +ok 590 - parse 'CREATE TABLE foo ( id INTEGER UNIQUE, phrase VARCHAR(40) UNIQUE )' using DBD::File +ok 591 - parse 'CREATE TABLE foo ( id INTEGER PRIMARY KEY, phrase VARCHAR(40) UNIQUE )' using DBD::File +ok 592 - parse 'CREATE TABLE foo ( id INTEGER PRIMARY KEY, phrase VARCHAR(40) NOT NULL )' using DBD::File +ok 593 - parse 'CREATE TABLE foo ( id INTEGER NOT NULL, phrase VARCHAR(40) NOT NULL )' using DBD::File +ok 594 - parse 'CREATE TABLE foo ( id INTEGER UNIQUE NOT NULL, phrase VARCHAR(40) )' using DBD::File +ok 595 - parse 'CREATE TABLE foo ( phrase CHARACTER VARYING(255) )' using DBD::File +ok 596 - parse 'CREATE TABLE foo ( phrase NUMERIC(4,6) )' using DBD::File +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::File +ok 598 - parse 'CREATE TABLE foo ( id INTEGER, phrase VARCHAR(40), PRIMARY KEY ( "id" ), FOREIGN KEY ("id", "phrase") REFERENCES "bar" ("id2", "phrase2"))' using DBD::File +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::File +ok 600 - parse ' /* JOINS */' using DBD::File +ok 601 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL INNER JOIN zUpper' using DBD::File +ok 602 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL LEFT JOIN zUpper' using DBD::File +ok 603 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL RIGHT JOIN zUpper' using DBD::File +ok 604 - parse 'SELECT Lnum,Llet,Ulet FROM zLower NATURAL FULL JOIN zUpper' using DBD::File +ok 605 - parse 'SELECT Lnum,Llet,Ulet FROM zLower INNER JOIN zUpper ON Lnum = Unum' using DBD::File +ok 606 - parse 'SELECT Lnum,Llet,Ulet FROM zLower LEFT JOIN zUpper ON Lnum = Unum' using DBD::File +ok 607 - parse 'SELECT Lnum,Llet,Ulet FROM zLower RIGHT JOIN zUpper ON Lnum = Unum' using DBD::File +ok 608 - parse 'SELECT Lnum,Llet,Ulet FROM zLower FULL JOIN zUpper ON Lnum = Unum' using DBD::File +ok 609 - parse 'SELECT Lnum,Llet,Ulet FROM zLower INNER JOIN zUpper USING(num)' using DBD::File +ok 610 - parse 'SELECT Lnum,Llet,Ulet FROM zLower LEFT JOIN zUpper USING(num)' using DBD::File +ok 611 - parse 'SELECT Lnum,Llet,Ulet FROM zLower RIGHT JOIN zUpper USING(num)' using DBD::File +ok 612 - parse 'SELECT Lnum,Llet,Ulet FROM zLower FULL JOIN zUpper USING(num)' using DBD::File +ok 613 - parse 'SELECT Lnum,Llet,Ulet FROM zLower,zUpper WHERE Lnum = Unum' using DBD::File +ok 614 - parse 'SELECT * FROM zLower NATURAL INNER JOIN zUpper' using DBD::File +ok 615 - parse 'SELECT * FROM zLower NATURAL LEFT JOIN zUpper' using DBD::File +ok 616 - parse 'SELECT * FROM zLower NATURAL RIGHT JOIN zUpper' using DBD::File +ok 617 - parse 'SELECT * FROM zLower NATURAL FULL JOIN zUpper' using DBD::File +ok 618 - parse 'SELECT * FROM zLower INNER JOIN zUpper ON Lnum = Unum' using DBD::File +ok 619 - parse 'SELECT * FROM zLower LEFT JOIN zUpper ON Lnum = Unum' using DBD::File +ok 620 - parse 'SELECT * FROM zLower RIGHT JOIN zUpper ON Lnum = Unum' using DBD::File +ok 621 - parse 'SELECT * FROM zLower FULL JOIN zUpper ON Lnum = Unum' using DBD::File +ok 622 - parse 'SELECT * FROM zLower INNER JOIN zUpper USING(num)' using DBD::File +ok 623 - parse 'SELECT * FROM zLower LEFT JOIN zUpper USING(num)' using DBD::File +ok 624 - parse 'SELECT * FROM zLower RIGHT JOIN zUpper USING(num)' using DBD::File +ok 625 - parse 'SELECT * FROM zLower FULL JOIN zUpper USING(num)' using DBD::File +ok 626 - parse 'SELECT * FROM zLower,zUpper WHERE Lnum = Unum' using DBD::File +ok 627 - parse ' /* SELECT COLUMNS */' using DBD::File +ok 628 - parse 'SELECT id, phrase FROM foo' using DBD::File +ok 629 - parse 'SELECT * FROM foo' using DBD::File +ok 630 - parse 'SELECT DISTINCT * FROM foo' using DBD::File +ok 631 - parse 'SELECT ALL * FROM foo' using DBD::File +ok 632 - parse 'SELECT A.*,B.* FROM A,B WHERE A.id=B.id' using DBD::File +ok 633 - parse ' /* SET FUNCTIONS */' using DBD::File +ok 634 - parse 'SELECT MAX(foo) FROM bar' using DBD::File +ok 635 - parse 'SELECT MIN(foo) FROM bar' using DBD::File +ok 636 - parse 'SELECT AVG(foo) FROM bar' using DBD::File +ok 637 - parse 'SELECT SUM(foo) FROM bar' using DBD::File +ok 638 - parse 'SELECT COUNT(foo) FROM foo' using DBD::File +ok 639 - parse 'SELECT COUNT(*) FROM foo' using DBD::File +ok 640 - parse 'SELECT SUM(DISTINCT foo) FROM bar' using DBD::File +ok 641 - parse 'SELECT SUM(ALL foo) FROM bar' using DBD::File +ok 642 - parse ' /* ORDER BY */' using DBD::File +ok 643 - parse 'SELECT * FROM foo ORDER BY bar' using DBD::File +ok 644 - parse 'SELECT * FROM foo ORDER BY bar, baz' using DBD::File +ok 645 - parse 'SELECT * FROM foo ORDER BY bar DESC' using DBD::File +ok 646 - parse 'SELECT * FROM foo ORDER BY bar ASC' using DBD::File +ok 647 - parse ' /* LIMIT */' using DBD::File +ok 648 - parse 'SELECT * FROM foo LIMIT 5' using DBD::File +ok 649 - parse 'SELECT * FROM foo LIMIT 0, 5' using DBD::File +ok 650 - parse 'SELECT * FROM foo LIMIT 5, 10' using DBD::File +ok 651 - parse '/* DATE/TIME FUNCTIONS */' using DBD::File +ok 652 - parse 'SELECT CURRENT_DATE()' using DBD::File +ok 653 - parse 'SELECT CURRENT_TIME()' using DBD::File +ok 654 - parse 'SELECT CURRENT_TIMESTAMP()' using DBD::File +ok 655 - parse 'SELECT CURDATE()' using DBD::File +ok 656 - parse 'SELECT CURTIME()' using DBD::File +ok 657 - parse 'SELECT NOW()' using DBD::File +ok 658 - parse 'SELECT UNIX_TIMESTAMP() ' using DBD::File +ok 659 - parse 'SELECT CURRENT_TIME(2)' using DBD::File +ok 660 - parse 'SELECT CURRENT_TIMESTAMP(2)' using DBD::File +ok 661 - parse 'SELECT CURTIME(2)' using DBD::File +ok 662 - parse 'SELECT NOW(2)' using DBD::File +ok 663 - parse 'SELECT UNIX_TIMESTAMP(2)' using DBD::File +ok 664 - parse ' /* STRING FUNCTIONS */' using DBD::File +ok 665 - parse 'SELECT * FROM foo WHERE ASCII(status) = 65' using DBD::File +ok 666 - parse 'SELECT * FROM foo WHERE CHAR(code) = 'A'' using DBD::File +ok 667 - parse 'SELECT * FROM foo WHERE CHAR(chr1,chr2,chr3) = 'ABC'' using DBD::File +ok 668 - parse 'SELECT * FROM foo WHERE BIT_LENGTH(str) = 27' using DBD::File +ok 669 - parse 'SELECT * FROM foo WHERE CHARACTER_LENGTH(str) = 6' using DBD::File +ok 670 - parse 'SELECT * FROM foo WHERE CHAR_LENGTH(str) = 6' using DBD::File +ok 671 - parse 'SELECT * FROM foo WHERE COALESCE(NULL, status) = 'bar'' using DBD::File +ok 672 - parse 'SELECT * FROM foo WHERE NVL(NULL, status) = 'bar'' using DBD::File +ok 673 - parse 'SELECT * FROM foo WHERE IFNULL(NULL, status) = 'bar'' using DBD::File +ok 674 - parse 'SELECT * FROM foo WHERE CONCAT(str1, str2) = 'bar'' using DBD::File +ok 675 - parse 'SELECT * FROM foo WHERE DECODE(color,'White','W','Red','R','B') = 'W'' using DBD::File +ok 676 - parse 'SELECT * FROM foo WHERE INSERT(str1, 4, 5, str2) = 'foobarland'' using DBD::File +ok 677 - parse 'SELECT * FROM foo WHERE LEFT(phrase) = 'bar'' using DBD::File +ok 678 - parse 'SELECT * FROM foo WHERE RIGHT(phrase) = 'bar'' using DBD::File +ok 679 - parse 'SELECT * FROM foo WHERE LOCATE(str1, str2) = 2' using DBD::File +ok 680 - parse 'SELECT * FROM foo WHERE LOCATE(str1, str2, 3) = 5' using DBD::File +ok 681 - parse 'SELECT * FROM foo WHERE POSITION(str1, str2) = 2' using DBD::File +ok 682 - parse 'SELECT * FROM foo WHERE POSITION(str1, str2, 3) = 5' using DBD::File +ok 683 - parse 'SELECT * FROM foo WHERE LOWER(phrase) = 'bar'' using DBD::File +ok 684 - parse 'SELECT * FROM foo WHERE UPPER(phrase) = 'BAR'' using DBD::File +ok 685 - parse 'SELECT * FROM foo WHERE LCASE(phrase) = 'BAR'' using DBD::File +ok 686 - parse 'SELECT * FROM foo WHERE UCASE(phrase) = 'bar'' using DBD::File +ok 687 - parse 'SELECT * FROM foo WHERE LTRIM(str) = 'bar'' using DBD::File +ok 688 - parse 'SELECT * FROM foo WHERE RTRIM(str) = 'bar'' using DBD::File +ok 689 - parse 'SELECT * FROM foo WHERE OCTET_LENGTH(str) = 12' using DBD::File +ok 690 - parse 'SELECT * FROM foo WHERE REGEX(phrase, '/EF/i') = TRUE' using DBD::File +ok 691 - parse 'SELECT * FROM foo WHERE REPEAT(status, 3) = 'AAA'' using DBD::File +ok 692 - parse 'SELECT * FROM foo WHERE REPLACE(phrase, 's/z(.+)ky//i') = 'bar'' using DBD::File +ok 693 - parse 'SELECT * FROM foo WHERE SUBSTITUTE(phrase, 's/z(.+)ky//i') = 'bar'' using DBD::File +ok 694 - parse 'SELECT * FROM foo WHERE SOUNDEX(name1, name2) = TRUE' using DBD::File +ok 695 - parse 'SELECT * FROM foo WHERE SPACE(num) = ' '' using DBD::File +ok 696 - parse 'SELECT * FROM foo WHERE blat = SUBSTRING(bar FROM 3 FOR 6)' using DBD::File +ok 697 - parse 'SELECT * FROM foo WHERE blat = SUBSTRING(bar FROM 3)' using DBD::File +ok 698 - parse 'SELECT * FROM foo WHERE blat = SUBSTR(bar, 3, 6)' using DBD::File +ok 699 - parse 'SELECT * FROM foo WHERE blat = SUBSTR(bar, 3)' using DBD::File +ok 700 - parse 'SELECT * FROM foo WHERE blat = TRANSLATE(bar, set1, set2)' using DBD::File +ok 701 - parse 'SELECT * FROM foo WHERE TRIM( str ) = 'bar'' using DBD::File +ok 702 - parse 'SELECT * FROM foo WHERE TRIM( LEADING FROM str ) = 'bar'' using DBD::File +ok 703 - parse 'SELECT * FROM foo WHERE TRIM( TRAILING FROM str ) = 'bar'' using DBD::File +ok 704 - parse 'SELECT * FROM foo WHERE TRIM( BOTH FROM str ) = 'bar'' using DBD::File +ok 705 - parse 'SELECT * FROM foo WHERE TRIM( LEADING ';' FROM str ) = 'bar'' using DBD::File +ok 706 - parse 'SELECT * FROM foo WHERE TRIM( UPPER(phrase) ) = 'bar'' using DBD::File +ok 707 - parse 'SELECT * FROM foo WHERE TRIM( LOWER(phrase) ) = 'bar'' using DBD::File +ok 708 - parse 'UPDATE foo SET bar='baz', bop=7, bump=bar+8, blat=SUBSTRING(bar FROM 3 FOR 6)' using DBD::File +ok 709 - parse ' /* NUMERIC FUNCTIONS */' using DBD::File +ok 710 - parse 'SELECT * FROM bar WHERE ABS(-4) = 4' using DBD::File +ok 711 - parse 'SELECT * FROM bar WHERE CEILING(-4.5) = -4' using DBD::File +ok 712 - parse 'SELECT * FROM bar WHERE CEIL(-4.9) = -4' using DBD::File +ok 713 - parse 'SELECT * FROM bar WHERE FLOOR(4.999999999999) = 4' using DBD::File +ok 714 - parse 'SELECT * FROM bar WHERE LOG(6) = LOG10(6)' using DBD::File +ok 715 - parse 'SELECT * FROM bar WHERE LN(1) = EXP(1)' using DBD::File +ok 716 - parse 'SELECT * FROM bar WHERE MOD(8, 5) = 3' using DBD::File +ok 717 - parse 'SELECT * FROM bar WHERE POWER(2, 4) = 16' using DBD::File +ok 718 - parse 'SELECT * FROM bar WHERE POW(2, 4) = 16' using DBD::File +ok 719 - parse 'SELECT * FROM bar WHERE RAND(2) = 0' using DBD::File +ok 720 - parse 'SELECT * FROM bar WHERE RAND(2, UNIX_TIMESTAMP()) = 0' using DBD::File +ok 721 - parse 'SELECT * FROM bar WHERE ROUND(4.999999999999) = 5' using DBD::File +ok 722 - parse 'SELECT * FROM bar WHERE ROUND(4.542222222222, 1) = 4.5' using DBD::File +ok 723 - parse 'SELECT * FROM bar WHERE SIGN(-25.5) = -1' using DBD::File +ok 724 - parse 'SELECT * FROM bar WHERE SIGN(53645) = 1' using DBD::File +ok 725 - parse 'SELECT * FROM bar WHERE SIGN(0) = 0' using DBD::File +ok 726 - parse 'SELECT * FROM bar WHERE SIGN(NULL) = NULL' using DBD::File +ok 727 - parse 'SELECT * FROM bar WHERE SQRT(64) = 8' using DBD::File +ok 728 - parse 'SELECT * FROM bar WHERE TRUNCATE(4.999999999999) = 4' using DBD::File +ok 729 - parse 'SELECT * FROM bar WHERE TRUNC(-4.9) = -4' using DBD::File +ok 730 - parse 'SELECT * FROM bar WHERE TRUNCATE(4.934, 1) = 4.9' using DBD::File +ok 731 - parse 'SELECT * FROM bar WHERE TRUNC(-4.99999, 1) = -4.9' using DBD::File +ok 732 - parse ' /* TRIGONOMETRIC FUNCTIONS */' using DBD::File +ok 733 - parse 'SELECT * FROM test WHERE ACOS(x)' using DBD::File +ok 734 - parse 'SELECT * FROM test WHERE ACOSEC(x)' using DBD::File +ok 735 - parse 'SELECT * FROM test WHERE ACOSECH(x)' using DBD::File +ok 736 - parse 'SELECT * FROM test WHERE ACOSH(x)' using DBD::File +ok 737 - parse 'SELECT * FROM test WHERE ACOT(x)' using DBD::File +ok 738 - parse 'SELECT * FROM test WHERE ACOTAN(x)' using DBD::File +ok 739 - parse 'SELECT * FROM test WHERE ACOTANH(x)' using DBD::File +ok 740 - parse 'SELECT * FROM test WHERE ACOTH(x)' using DBD::File +ok 741 - parse 'SELECT * FROM test WHERE ACSC(x)' using DBD::File +ok 742 - parse 'SELECT * FROM test WHERE ACSCH(x)' using DBD::File +ok 743 - parse 'SELECT * FROM test WHERE ASEC(x)' using DBD::File +ok 744 - parse 'SELECT * FROM test WHERE ASECH(x)' using DBD::File +ok 745 - parse 'SELECT * FROM test WHERE ASIN(x)' using DBD::File +ok 746 - parse 'SELECT * FROM test WHERE ASINH(x)' using DBD::File +ok 747 - parse 'SELECT * FROM test WHERE ATAN(x)' using DBD::File +ok 748 - parse 'SELECT * FROM test WHERE ATAN2(y, x)' using DBD::File +ok 749 - parse 'SELECT * FROM test WHERE ATANH(x)' using DBD::File +ok 750 - parse 'SELECT * FROM test WHERE COS(x)' using DBD::File +ok 751 - parse 'SELECT * FROM test WHERE COSEC(x)' using DBD::File +ok 752 - parse 'SELECT * FROM test WHERE COSECH(x)' using DBD::File +ok 753 - parse 'SELECT * FROM test WHERE COSH(x)' using DBD::File +ok 754 - parse 'SELECT * FROM test WHERE COT(x)' using DBD::File +ok 755 - parse 'SELECT * FROM test WHERE COTAN(x)' using DBD::File +ok 756 - parse 'SELECT * FROM test WHERE COTANH(x)' using DBD::File +ok 757 - parse 'SELECT * FROM test WHERE COTH(x)' using DBD::File +ok 758 - parse 'SELECT * FROM test WHERE CSC(x)' using DBD::File +ok 759 - parse 'SELECT * FROM test WHERE CSCH(x)' using DBD::File +ok 760 - parse 'SELECT * FROM test WHERE DEG2DEG(deg)' using DBD::File +ok 761 - parse 'SELECT * FROM test WHERE RAD2RAD(rad)' using DBD::File +ok 762 - parse 'SELECT * FROM test WHERE GRAD2GRAD(grad)' using DBD::File +ok 763 - parse 'SELECT * FROM test WHERE DEG2GRAD(deg)' using DBD::File +ok 764 - parse 'SELECT * FROM test WHERE DEG2RAD(deg)' using DBD::File +ok 765 - parse 'SELECT * FROM test WHERE GRAD2DEG(grad)' using DBD::File +ok 766 - parse 'SELECT * FROM test WHERE GRAD2RAD(grad)' using DBD::File +ok 767 - parse 'SELECT * FROM test WHERE RAD2DEG(rad)' using DBD::File +ok 768 - parse 'SELECT * FROM test WHERE RAD2GRAD(rad)' using DBD::File +ok 769 - parse 'SELECT * FROM test WHERE DEGREES(rad)' using DBD::File +ok 770 - parse 'SELECT * FROM test WHERE RADIANS(deg)' using DBD::File +ok 771 - parse 'SELECT * FROM test WHERE DEG2DEG(deg, TRUE)' using DBD::File +ok 772 - parse 'SELECT * FROM test WHERE RAD2RAD(rad, TRUE)' using DBD::File +ok 773 - parse 'SELECT * FROM test WHERE GRAD2GRAD(grad, TRUE)' using DBD::File +ok 774 - parse 'SELECT * FROM test WHERE DEG2GRAD(deg, TRUE)' using DBD::File +ok 775 - parse 'SELECT * FROM test WHERE DEG2RAD(deg, TRUE)' using DBD::File +ok 776 - parse 'SELECT * FROM test WHERE GRAD2DEG(grad, TRUE)' using DBD::File +ok 777 - parse 'SELECT * FROM test WHERE GRAD2RAD(grad, TRUE)' using DBD::File +ok 778 - parse 'SELECT * FROM test WHERE RAD2DEG(rad, TRUE)' using DBD::File +ok 779 - parse 'SELECT * FROM test WHERE RAD2GRAD(rad, TRUE)' using DBD::File +ok 780 - parse 'SELECT * FROM test WHERE DEGREES(rad, TRUE)' using DBD::File +ok 781 - parse 'SELECT * FROM test WHERE RADIANS(deg, TRUE)' using DBD::File +ok 782 - parse 'SELECT * FROM test WHERE PI()' using DBD::File +ok 783 - parse 'SELECT * FROM test WHERE SEC(x)' using DBD::File +ok 784 - parse 'SELECT * FROM test WHERE SECH(x)' using DBD::File +ok 785 - parse 'SELECT * FROM test WHERE SIN(x)' using DBD::File +ok 786 - parse 'SELECT * FROM test WHERE SINH(x)' using DBD::File +ok 787 - parse 'SELECT * FROM test WHERE TAN(x)' using DBD::File +ok 788 - parse 'SELECT * FROM test WHERE TANH(x)' using DBD::File +ok 789 - parse ' /* SYSTEM FUNCTIONS */' using DBD::File +ok 790 - parse 'SELECT * FROM ztable WHERE DBNAME() = foobar' using DBD::File +ok 791 - parse 'SELECT * FROM ztable WHERE USERNAME() = foobar' using DBD::File +ok 792 - parse 'SELECT * FROM ztable WHERE USER() = foobar' using DBD::File +ok 793 - parse ' /* TABLE NAME ALIASES */' using DBD::File +ok 794 - parse 'SELECT * FROM test as T1' using DBD::File +ok 795 - parse 'SELECT * FROM test T1' using DBD::File +ok 796 - parse 'SELECT T1.id, T2.num FROM test as T1 JOIN test2 as T2 USING(id)' using DBD::File +ok 797 - parse 'SELECT id FROM test as T1 WHERE T1.num < 7' using DBD::File +ok 798 - parse 'SELECT id FROM test as T1 ORDER BY T1.num' using DBD::File +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::File +ok 800 - parse ' /* NUMERIC EXPRESSIONS */' using DBD::File +ok 801 - parse 'SELECT * FROM foo WHERE 1 = 0 AND baz < (6*foo+11-r)' using DBD::File +ok 802 - parse ' /* CASE OF IDENTIFIERS */' using DBD::File +ok 803 - parse 'SELECT ID, phRase FROM tEst AS tE WHERE te.id < 3 ORDER BY TE.phrasE' using DBD::File +ok 804 - parse ' /* PARENS */' using DBD::File +ok 805 - parse 'SELECT * FROM ztable WHERE NOT data IN ('one','two')' using DBD::File +ok 806 - parse 'SELECT * from ztable WHERE (aaa > 'AAA')' using DBD::File +ok 807 - parse 'SELECT * from ztable WHERE sev = 50 OR sev = 60' using DBD::File +ok 808 - parse 'SELECT * from ztable WHERE (sev = 50 OR sev = 60)' using DBD::File +ok 809 - parse 'SELECT * from ztable WHERE sev IN (50,60)' using DBD::File +ok 810 - parse 'SELECT * from ztable WHERE rc > 200 AND ( sev IN(50,60) )' using DBD::File +ok 811 - parse 'SELECT * FROM ztable WHERE data NOT IN ('one','two')' using DBD::File +ok 812 - parse 'SELECT * from ztable WHERE (aaa > 'AAA') AND (zzz < 'ZZZ')' using DBD::File +ok 813 - parse 'SELECT * from ztable WHERE (sev IN(50,60))' using DBD::File +ok 814 - parse ' /* NOT */' using DBD::File +ok 815 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND bop = 7 OR NOT blat = bar' using DBD::File +ok 816 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND NOT bop = 7 OR NOT blat = bar' using DBD::File +ok 817 - parse 'SELECT * FROM foo WHERE NOT bar = 'baz' AND NOT bop = 7 OR blat IS NOT NULL' using DBD::File +ok 818 - parse ' /* IN */' using DBD::File +ok 819 - parse 'SELECT * FROM bar WHERE foo IN ('aa','ab','ba','bb')' using DBD::File +ok 820 - parse 'SELECT * FROM bar WHERE foo IN (3.14,2.72,1.41,9.81)' using DBD::File +ok 821 - parse 'SELECT * FROM bar WHERE foo NOT IN ('aa','ab','ba','bb')' using DBD::File +ok 822 - parse 'SELECT * FROM bar WHERE foo NOT IN (3.14,2.72,1.41,9.81)' using DBD::File +ok 823 - parse ' /* BETWEEN */' using DBD::File +ok 824 - parse 'SELECT * FROM bar WHERE foo BETWEEN ('aa','bb')' using DBD::File +ok 825 - parse 'SELECT * FROM bar WHERE foo BETWEEN (1.41,9.81)' using DBD::File +ok 826 - parse 'SELECT * FROM bar WHERE foo NOT BETWEEN ('aa','bb')' using DBD::File +ok 827 - parse 'SELECT * FROM bar WHERE foo NOT BETWEEN (1.41,9.81)' using DBD::File +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::File # TODO Analyze failures +not ok 829 - 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 /usr/lib/x86_64-linux-gnu/perl5/5.38/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' +not ok 830 - 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 = {}; @@ -1488,7 +1524,7 @@ # Command SELECT # Num Pholders 1 # Columns -# Tables SQL::Statement::Table=HASH(0x5567f391f558),SQL::Statement::Table=HASH(0x5567f38c8798) +# Tables SQL::Statement::Table=HASH(0x556ed96ee9d8),SQL::Statement::Table=HASH(0x556ed97135f0) # Where op AND # Limit 2 # Offset 5 @@ -1690,37 +1726,37 @@ ok 38 - $stmt->column_names ok 39 - $stmt->order ok 40 - $stmt->fetch -ok 41 - $stmt->execute "SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo')" (SELECT) -ok 42 - SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo') -ok 43 - $stmt->execute "SELECT b,c FROM a WHERE c NOT IN ('abc','klm','pqr','vwx','yz')" (SELECT) -ok 44 - SELECT b,c FROM a WHERE c NOT IN ('abc','klm','pqr','vwx','yz') -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 NOT b BETWEEN (5,7)" (SELECT) -ok 48 - SELECT b,c FROM a WHERE NOT b BETWEEN (5,7) -ok 49 - $stmt->execute "SELECT b,c FROM a WHERE b IN (2,3,5,7)" (SELECT) -ok 50 - SELECT b,c FROM a WHERE b IN (2,3,5,7) -ok 51 - $stmt->execute "SELECT b,c FROM a WHERE b NOT BETWEEN (5,7)" (SELECT) -ok 52 - SELECT b,c FROM a WHERE b NOT BETWEEN (5,7) -ok 53 - $stmt->execute "SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz')" (SELECT) -ok 54 - SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz') -ok 55 - $stmt->execute "SELECT b,c FROM a WHERE b NOT IN (2,3,5,7)" (SELECT) -ok 56 - SELECT b,c FROM a WHERE b NOT IN (2,3,5,7) -ok 57 - $stmt->execute "SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz')" (SELECT) -ok 58 - SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz') -ok 59 - $stmt->execute "SELECT b,c FROM a WHERE b BETWEEN (5,7)" (SELECT) -ok 60 - SELECT b,c FROM a WHERE b BETWEEN (5,7) -ok 61 - $stmt->execute "SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo')" (SELECT) -ok 62 - SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo') -ok 63 - $stmt->execute "SELECT b,c FROM a WHERE NOT b IN (2,3,5,7)" (SELECT) -ok 64 - SELECT b,c FROM a WHERE NOT b IN (2,3,5,7) +ok 41 - $stmt->execute "SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo')" (SELECT) +ok 42 - SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo') +ok 43 - $stmt->execute "SELECT b,c FROM a WHERE b NOT IN (2,3,5,7)" (SELECT) +ok 44 - SELECT b,c FROM a WHERE b NOT IN (2,3,5,7) +ok 45 - $stmt->execute "SELECT b,c FROM a WHERE b IN (2,3,5,7)" (SELECT) +ok 46 - SELECT b,c FROM a WHERE b IN (2,3,5,7) +ok 47 - $stmt->execute "SELECT b,c FROM a WHERE b BETWEEN (5,7)" (SELECT) +ok 48 - SELECT b,c FROM a WHERE b BETWEEN (5,7) +ok 49 - $stmt->execute "SELECT b,c FROM a WHERE c NOT IN ('abc','klm','pqr','vwx','yz')" (SELECT) +ok 50 - SELECT b,c FROM a WHERE c NOT IN ('abc','klm','pqr','vwx','yz') +ok 51 - $stmt->execute "SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo')" (SELECT) +ok 52 - SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo') +ok 53 - $stmt->execute "SELECT b,c FROM a WHERE NOT b IN (2,3,5,7)" (SELECT) +ok 54 - SELECT b,c FROM a WHERE NOT b IN (2,3,5,7) +ok 55 - $stmt->execute "SELECT b,c FROM a WHERE NOT b BETWEEN (5,7)" (SELECT) +ok 56 - SELECT b,c FROM a WHERE NOT b BETWEEN (5,7) +ok 57 - $stmt->execute "SELECT b,c FROM a WHERE b NOT BETWEEN (5,7)" (SELECT) +ok 58 - SELECT b,c FROM a WHERE b NOT BETWEEN (5,7) +ok 59 - $stmt->execute "SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo')" (SELECT) +ok 60 - SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo') +ok 61 - $stmt->execute "SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz')" (SELECT) +ok 62 - SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz') +ok 63 - $stmt->execute "SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz')" (SELECT) +ok 64 - SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz') 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::File +# Running tests for DBD::DBM ok 71 - CREATE Tmp ok 72 - placeholder insert with named cols ok 73 - placeholder insert without named cols @@ -1742,11 +1778,11 @@ ok 89 - prepare 'SELECT UPPER('a') AS A,phrase FROM phrase' ok 90 - SELECT ok 91 - COUNT * -ok 92 - DROP TEMP TABLE +ok 92 - DROP TABLE ok 93 - COMPUTED COLUMNS IN SELECT LIST ok 94 - CREATE FUNCTION from script -# < CREATE TEMP TABLE a (b INT, c CHAR)> -ok 95 - $stmt->execute " CREATE TEMP TABLE a (b INT, c CHAR)" (CREATE) +# < 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')> @@ -1772,37 +1808,37 @@ ok 108 - $stmt->column_names ok 109 - $stmt->order ok 110 - $stmt->fetch -ok 111 - $stmt->execute "SELECT b,c FROM a WHERE NOT b IN (2,3,5,7)" (SELECT) -ok 112 - SELECT b,c FROM a WHERE NOT b IN (2,3,5,7) -ok 113 - $stmt->execute "SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo')" (SELECT) -ok 114 - SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo') -ok 115 - $stmt->execute "SELECT b,c FROM a WHERE b BETWEEN (5,7)" (SELECT) -ok 116 - SELECT b,c FROM a WHERE b BETWEEN (5,7) +ok 111 - $stmt->execute "SELECT b,c FROM a WHERE b NOT BETWEEN (5,7)" (SELECT) +ok 112 - SELECT b,c FROM a WHERE b NOT BETWEEN (5,7) +ok 113 - $stmt->execute "SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo')" (SELECT) +ok 114 - SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo') +ok 115 - $stmt->execute "SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz')" (SELECT) +ok 116 - SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz') ok 117 - $stmt->execute "SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz')" (SELECT) ok 118 - SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz') -ok 119 - $stmt->execute "SELECT b,c FROM a WHERE b NOT IN (2,3,5,7)" (SELECT) -ok 120 - SELECT b,c FROM a WHERE b NOT IN (2,3,5,7) -ok 121 - $stmt->execute "SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz')" (SELECT) -ok 122 - SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz') -ok 123 - $stmt->execute "SELECT b,c FROM a WHERE b NOT BETWEEN (5,7)" (SELECT) -ok 124 - SELECT b,c FROM a WHERE b NOT BETWEEN (5,7) -ok 125 - $stmt->execute "SELECT b,c FROM a WHERE b IN (2,3,5,7)" (SELECT) -ok 126 - SELECT b,c FROM a WHERE b IN (2,3,5,7) -ok 127 - $stmt->execute "SELECT b,c FROM a WHERE NOT b BETWEEN (5,7)" (SELECT) -ok 128 - SELECT b,c FROM a WHERE NOT b BETWEEN (5,7) -ok 129 - $stmt->execute "SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo')" (SELECT) -ok 130 - SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo') -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 c NOT BETWEEN ('abc','nmo')" (SELECT) -ok 134 - SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo') +ok 119 - $stmt->execute "SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo')" (SELECT) +ok 120 - SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo') +ok 121 - $stmt->execute "SELECT b,c FROM a WHERE b IN (2,3,5,7)" (SELECT) +ok 122 - SELECT b,c FROM a WHERE b IN (2,3,5,7) +ok 123 - $stmt->execute "SELECT b,c FROM a WHERE b NOT IN (2,3,5,7)" (SELECT) +ok 124 - SELECT b,c FROM a WHERE b NOT IN (2,3,5,7) +ok 125 - $stmt->execute "SELECT b,c FROM a WHERE c NOT IN ('abc','klm','pqr','vwx','yz')" (SELECT) +ok 126 - SELECT b,c FROM a WHERE c NOT IN ('abc','klm','pqr','vwx','yz') +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 BETWEEN (5,7)" (SELECT) +ok 130 - SELECT b,c FROM a WHERE b BETWEEN (5,7) +ok 131 - $stmt->execute "SELECT b,c FROM a WHERE NOT b IN (2,3,5,7)" (SELECT) +ok 132 - SELECT b,c FROM a WHERE NOT b IN (2,3,5,7) +ok 133 - $stmt->execute "SELECT b,c FROM a WHERE NOT b BETWEEN (5,7)" (SELECT) +ok 134 - SELECT b,c FROM a WHERE NOT b BETWEEN (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::DBM +ok 138 # skip DBD::DBM Update test won't run without MLDBM +ok 139 # skip DBD::DBM Update test won't run without MLDBM +ok 140 # skip DBD::DBM Update test won't run without MLDBM +# Running tests for DBD::File ok 141 - CREATE Tmp ok 142 - placeholder insert with named cols ok 143 - placeholder insert without named cols @@ -1824,11 +1860,11 @@ ok 159 - prepare 'SELECT UPPER('a') AS A,phrase FROM phrase' ok 160 - SELECT ok 161 - COUNT * -ok 162 - DROP TABLE +ok 162 - DROP TEMP TABLE ok 163 - COMPUTED COLUMNS IN SELECT LIST ok 164 - CREATE FUNCTION from script -# < CREATE TABLE a (b INT, c CHAR)> -ok 165 - $stmt->execute " CREATE TABLE a (b INT, c CHAR)" (CREATE) +# < 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')> @@ -1854,36 +1890,36 @@ ok 178 - $stmt->column_names ok 179 - $stmt->order ok 180 - $stmt->fetch -ok 181 - $stmt->execute "SELECT b,c FROM a WHERE NOT b IN (2,3,5,7)" (SELECT) -ok 182 - SELECT b,c FROM a WHERE NOT b IN (2,3,5,7) -ok 183 - $stmt->execute "SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo')" (SELECT) -ok 184 - SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo') +ok 181 - $stmt->execute "SELECT b,c FROM a WHERE NOT b BETWEEN (5,7)" (SELECT) +ok 182 - SELECT b,c FROM a WHERE NOT b BETWEEN (5,7) +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 b BETWEEN (5,7)" (SELECT) ok 186 - SELECT b,c FROM a WHERE b BETWEEN (5,7) -ok 187 - $stmt->execute "SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz')" (SELECT) -ok 188 - SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz') -ok 189 - $stmt->execute "SELECT b,c FROM a WHERE b NOT IN (2,3,5,7)" (SELECT) -ok 190 - SELECT b,c FROM a WHERE b NOT IN (2,3,5,7) -ok 191 - $stmt->execute "SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz')" (SELECT) -ok 192 - SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz') -ok 193 - $stmt->execute "SELECT b,c FROM a WHERE b NOT BETWEEN (5,7)" (SELECT) -ok 194 - SELECT b,c FROM a WHERE b NOT BETWEEN (5,7) +ok 187 - $stmt->execute "SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo')" (SELECT) +ok 188 - SELECT b,c FROM a WHERE NOT c BETWEEN ('abc','nmo') +ok 189 - $stmt->execute "SELECT b,c FROM a WHERE c NOT IN ('abc','klm','pqr','vwx','yz')" (SELECT) +ok 190 - SELECT b,c FROM a WHERE c NOT IN ('abc','klm','pqr','vwx','yz') +ok 191 - $stmt->execute "SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo')" (SELECT) +ok 192 - SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo') +ok 193 - $stmt->execute "SELECT b,c FROM a WHERE b NOT IN (2,3,5,7)" (SELECT) +ok 194 - SELECT b,c FROM a WHERE b NOT IN (2,3,5,7) ok 195 - $stmt->execute "SELECT b,c FROM a WHERE b IN (2,3,5,7)" (SELECT) ok 196 - SELECT b,c FROM a WHERE b IN (2,3,5,7) -ok 197 - $stmt->execute "SELECT b,c FROM a WHERE NOT b BETWEEN (5,7)" (SELECT) -ok 198 - SELECT b,c FROM a WHERE NOT b BETWEEN (5,7) -ok 199 - $stmt->execute "SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo')" (SELECT) -ok 200 - SELECT b,c FROM a WHERE c BETWEEN ('abc','nmo') -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 c NOT BETWEEN ('abc','nmo')" (SELECT) -ok 204 - SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo') +ok 197 - $stmt->execute "SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz')" (SELECT) +ok 198 - SELECT b,c FROM a WHERE NOT c IN ('abc','klm','pqr','vwx','yz') +ok 199 - $stmt->execute "SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz')" (SELECT) +ok 200 - SELECT b,c FROM a WHERE c IN ('abc','klm','pqr','vwx','yz') +ok 201 - $stmt->execute "SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo')" (SELECT) +ok 202 - SELECT b,c FROM a WHERE c NOT BETWEEN ('abc','nmo') +ok 203 - $stmt->execute "SELECT b,c FROM a WHERE b NOT BETWEEN (5,7)" (SELECT) +ok 204 - SELECT b,c FROM a WHERE b NOT BETWEEN (5,7) ok 205 - CREATE FUNCTION from module ok 206 - CREATE FUNCTION from module with argument ok 207 - LOAD FUNCTIONS -ok 208 # skip DBD::DBM Update test won't run without MLDBM -ok 209 # skip DBD::DBM Update test won't run without MLDBM -ok 210 # skip DBD::DBM Update test won't run without MLDBM +ok 208 - CREATE pauli test table +ok 209 - UPDATE with placeholders +ok 210 - UPDATE with placeholder updates correct 1..210 ok Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. @@ -2026,7 +2062,7 @@ 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::DBM +# Running tests for DBD::File ok 38 - Column Names: select list = * ok 39 - Column Names: select list = named ok 40 - Column Names: select list = aliased @@ -2067,7 +2103,7 @@ ok 75 - imported table : upper ok 76 - imported table : mixed ok 77 - imported table : asterisked -# Running tests for DBD::File +# 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 @@ -2148,44 +2184,6 @@ Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in subtraction (-) at /usr/share/perl/5.38/Text/Balanced.pm line 1008. -Use of uninitialized value $unkpos in substr at /usr/share/perl/5.38/Text/Balanced.pm line 1008. t/05simple.t .... # Can't locate MLDBM.pm in @INC (you may need to install the MLDBM module) (@INC entries checked: t /build/reproducible-path/libsql-statement-perl-1.414/blib/lib /build/reproducible-path/libsql-statement-perl-1.414/blib/arch /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.38.2 /usr/local/share/perl/5.38.2 /usr/lib/x86_64-linux-gnu/perl5/5.38 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl-base /usr/lib/x86_64-linux-gnu/perl/5.38 /usr/share/perl/5.38 /usr/local/lib/site_perl .) at t/TestLib.pm line 42. # Can't locate DBD/CSV.pm in @INC (you may need to install the DBD::CSV module) (@INC entries checked: t /build/reproducible-path/libsql-statement-perl-1.414/blib/lib /build/reproducible-path/libsql-statement-perl-1.414/blib/arch /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.38.2 /usr/local/share/perl/5.38.2 /usr/lib/x86_64-linux-gnu/perl5/5.38 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl-base /usr/lib/x86_64-linux-gnu/perl/5.38 /usr/share/perl/5.38 /usr/local/lib/site_perl .) at t/TestLib.pm line 42. @@ -2356,170 +2354,9 @@ ok 158 - prepare using 'SQL::Statement' ok 159 - execute using 'SQL::Statement' ok 160 - execute(DROP TABLE test_tbl) == -1 using 'SQL::Statement' -# Running tests for DBD::File -ok 161 - prepare using 'DBD::File' -ok 181 - execute using 'DBD::File' 2nd time -ok 184 - execute using 'DBD::File' -ok 190 - execute using 'DBD::File' 2nd time -ok 193 - execute using 'DBD::File' -ok 209 - execute using 'DBD::File' 2nd time -ok 212 - execute using 'DBD::File' -ok 227 - execute using 'DBD::File' 2nd time -ok 230 - execute using 'DBD::File' -ok 237 - execute == 1 using 'DBD::File' -ok 239 - SELECT results for SELECT COUNT(*) FROM multi_fruit using DBD::File -ok 240 - execute == 1 using 'DBD::File' -ok 242 - SELECT results for SELECT COUNT(*) FROM multi_fruit using 'DBD::File' 2nd time -ok 243 - prepare using 'DBD::File' -ok 244 - execute using 'DBD::File' -ok 245 - execute(DROP TABLE multi_fruit) == -1 using 'DBD::File' -ok 246 - prepare using 'DBD::File' -ok 247 - prepare using 'DBD::File' -ok 257 - execute using 'DBD::File' 2nd time -ok 260 - execute using 'DBD::File' -ok 265 - execute using 'DBD::File' 2nd time -ok 268 - execute using 'DBD::File' -ok 273 - execute using 'DBD::File' 2nd time -ok 276 - execute using 'DBD::File' -ok 281 - execute using 'DBD::File' 2nd time -ok 284 - execute using 'DBD::File' -ok 289 - execute using 'DBD::File' 2nd time -ok 292 - execute using 'DBD::File' -ok 297 - execute using 'DBD::File' 2nd time -ok 300 - execute using 'DBD::File' -ok 305 - execute using 'DBD::File' 2nd time -ok 308 - execute using 'DBD::File' -ok 313 - execute using 'DBD::File' 2nd time -ok 316 - execute