summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDeven Bansod <devenbansod.bits@gmail.com>2016-09-10 19:38:34 +0530
committerDeven Bansod <devenbansod.bits@gmail.com>2016-09-10 19:38:34 +0530
commit28007b85c832d54a0cf05e77a6cc4cb716bf00ee (patch)
treeed3a07d216c9e248fb18c929789eb05624a29428
parent044fe5b24e8d87134353f196b1458c5ae9e887b4 (diff)
downloadsql-parser-28007b85c832d54a0cf05e77a6cc4cb716bf00ee.zip
sql-parser-28007b85c832d54a0cf05e77a6cc4cb716bf00ee.tar.gz
sql-parser-28007b85c832d54a0cf05e77a6cc4cb716bf00ee.tar.bz2
Add testcases for SET CHARACTER SET, CHARSET, NAMES and errors
Signed-off-by: Deven Bansod <devenbansod.bits@gmail.com>
-rw-r--r--tests/Parser/SetStatementTest.php30
-rw-r--r--tests/data/parser/parseSetCharacterSet.in1
-rw-r--r--tests/data/parser/parseSetCharacterSet.out1
-rw-r--r--tests/data/parser/parseSetCharacterSetError.in1
-rw-r--r--tests/data/parser/parseSetCharacterSetError.out1
-rw-r--r--tests/data/parser/parseSetCharset.in1
-rw-r--r--tests/data/parser/parseSetCharset.out1
-rw-r--r--tests/data/parser/parseSetCharsetError.in1
-rw-r--r--tests/data/parser/parseSetCharsetError.out1
-rw-r--r--tests/data/parser/parseSetError1.in1
-rw-r--r--tests/data/parser/parseSetError1.out1
-rw-r--r--tests/data/parser/parseSetNames.in1
-rw-r--r--tests/data/parser/parseSetNames.out1
-rw-r--r--tests/data/parser/parseSetNamesError.in1
-rw-r--r--tests/data/parser/parseSetNamesError.out1
15 files changed, 44 insertions, 0 deletions
diff --git a/tests/Parser/SetStatementTest.php b/tests/Parser/SetStatementTest.php
new file mode 100644
index 0000000..d9df799
--- /dev/null
+++ b/tests/Parser/SetStatementTest.php
@@ -0,0 +1,30 @@
+<?php
+
+namespace SqlParser\Tests\Parser;
+
+use SqlParser\Tests\TestCase;
+
+class SetStatementTest extends TestCase
+{
+
+ /**
+ * @dataProvider testSetProvider
+ */
+ public function testSet($test)
+ {
+ $this->runParserTest($test);
+ }
+
+ public function testSetProvider()
+ {
+ return array(
+ array('parser/parseSetCharset'),
+ array('parser/parseSetCharsetError'),
+ array('parser/parseSetCharacterSet'),
+ array('parser/parseSetCharacterSetError'),
+ array('parser/parseSetNames'),
+ array('parser/parseSetNamesError'),
+ array('parser/parseSetError1'),
+ );
+ }
+}
diff --git a/tests/data/parser/parseSetCharacterSet.in b/tests/data/parser/parseSetCharacterSet.in
new file mode 100644
index 0000000..0653e04
--- /dev/null
+++ b/tests/data/parser/parseSetCharacterSet.in
@@ -0,0 +1 @@
+SET CHARACTER SET 'utf8' \ No newline at end of file
diff --git a/tests/data/parser/parseSetCharacterSet.out b/tests/data/parser/parseSetCharacterSet.out
new file mode 100644
index 0000000..de4c2aa
--- /dev/null
+++ b/tests/data/parser/parseSetCharacterSet.out
@@ -0,0 +1 @@
+a:4:{s:5:"query";s:24:"SET CHARACTER SET 'utf8'";s:5:"lexer";O:15:"SqlParser\Lexer":8:{s:6:"strict";b:0;s:3:"str";s:24:"SET CHARACTER SET 'utf8'";s:3:"len";i:24;s:4:"last";i:24;s:4:"list";O:20:"SqlParser\TokensList":3:{s:6:"tokens";a:6:{i:0;O:15:"SqlParser\Token":5:{s:5:"token";s:3:"SET";s:5:"value";s:3:"SET";s:4:"type";i:1;s:5:"flags";i:11;s:8:"position";i:0;}i:1;O:15:"SqlParser\Token":5:{s:5:"token";s:1:" ";s:5:"value";s:1:" ";s:4:"type";i:3;s:5:"flags";i:0;s:8:"position";i:3;}i:2;O:15:"SqlParser\Token":5:{s:5:"token";s:13:"CHARACTER SET";s:5:"value";s:13:"CHARACTER SET";s:4:"type";i:1;s:5:"flags";i:7;s:8:"position";i:4;}i:3;O:15:"SqlParser\Token":5:{s:5:"token";s:1:" ";s:5:"value";s:1:" ";s:4:"type";i:3;s:5:"flags";i:0;s:8:"position";i:17;}i:4;O:15:"SqlParser\Token":5:{s:5:"token";s:6:"'utf8'";s:5:"value";s:4:"utf8";s:4:"type";i:7;s:5:"flags";i:1;s:8:"position";i:18;}i:5;O:15:"SqlParser\Token":5:{s:5:"token";N;s:5:"value";N;s:4:"type";i:9;s:5:"flags";i:0;s:8:"position";N;}}s:5:"count";i:6;s:3:"idx";i:6;}s:9:"delimiter";s:1:";";s:12:"delimiterLen";i:1;s:6:"errors";a:0:{}}s:6:"parser";O:16:"SqlParser\Parser":5:{s:4:"list";r:8;s:6:"strict";b:0;s:6:"errors";a:0:{}s:10:"statements";a:1:{i:0;O:33:"SqlParser\Statements\SetStatement":4:{s:7:"options";O:33:"SqlParser\Components\OptionsArray":1:{s:7:"options";a:1:{i:3;a:4:{s:4:"name";s:13:"CHARACTER SET";s:6:"equals";b:0;s:4:"expr";s:6:"'utf8'";s:5:"value";s:4:"utf8";}}}s:3:"set";a:0:{}s:5:"first";i:0;s:4:"last";i:4;}}s:8:"brackets";i:0;}s:6:"errors";a:2:{s:5:"lexer";a:0:{}s:6:"parser";a:0:{}}} \ No newline at end of file
diff --git a/tests/data/parser/parseSetCharacterSetError.in b/tests/data/parser/parseSetCharacterSetError.in
new file mode 100644
index 0000000..f44c24b
--- /dev/null
+++ b/tests/data/parser/parseSetCharacterSetError.in
@@ -0,0 +1 @@
+SET CHARACTER SET \ No newline at end of file
diff --git a/tests/data/parser/parseSetCharacterSetError.out b/tests/data/parser/parseSetCharacterSetError.out
new file mode 100644
index 0000000..ba6f804
--- /dev/null
+++ b/tests/data/parser/parseSetCharacterSetError.out
@@ -0,0 +1 @@
+a:4:{s:5:"query";s:18:"SET CHARACTER SET ";s:5:"lexer";O:15:"SqlParser\Lexer":8:{s:6:"strict";b:0;s:3:"str";s:18:"SET CHARACTER SET ";s:3:"len";i:18;s:4:"last";i:18;s:4:"list";O:20:"SqlParser\TokensList":3:{s:6:"tokens";a:5:{i:0;O:15:"SqlParser\Token":5:{s:5:"token";s:3:"SET";s:5:"value";s:3:"SET";s:4:"type";i:1;s:5:"flags";i:11;s:8:"position";i:0;}i:1;O:15:"SqlParser\Token":5:{s:5:"token";s:1:" ";s:5:"value";s:1:" ";s:4:"type";i:3;s:5:"flags";i:0;s:8:"position";i:3;}i:2;O:15:"SqlParser\Token":5:{s:5:"token";s:13:"CHARACTER SET";s:5:"value";s:13:"CHARACTER SET";s:4:"type";i:1;s:5:"flags";i:7;s:8:"position";i:4;}i:3;O:15:"SqlParser\Token":5:{s:5:"token";s:1:" ";s:5:"value";s:1:" ";s:4:"type";i:3;s:5:"flags";i:0;s:8:"position";i:17;}i:4;O:15:"SqlParser\Token":5:{s:5:"token";N;s:5:"value";N;s:4:"type";i:9;s:5:"flags";i:0;s:8:"position";N;}}s:5:"count";i:5;s:3:"idx";i:5;}s:9:"delimiter";s:1:";";s:12:"delimiterLen";i:1;s:6:"errors";a:0:{}}s:6:"parser";O:16:"SqlParser\Parser":5:{s:4:"list";r:8;s:6:"strict";b:0;s:6:"errors";a:0:{}s:10:"statements";a:1:{i:0;O:33:"SqlParser\Statements\SetStatement":4:{s:7:"options";O:33:"SqlParser\Components\OptionsArray":1:{s:7:"options";a:1:{i:3;a:4:{s:4:"name";s:13:"CHARACTER SET";s:6:"equals";b:0;s:4:"expr";s:0:"";s:5:"value";s:0:"";}}}s:3:"set";a:0:{}s:5:"first";i:0;s:4:"last";i:3;}}s:8:"brackets";i:0;}s:6:"errors";a:2:{s:5:"lexer";a:0:{}s:6:"parser";a:1:{i:0;a:3:{i:0;s:58:"Value/Expression for the option CHARACTER SET was expected";i:1;r:28;i:2;i:0;}}}} \ No newline at end of file
diff --git a/tests/data/parser/parseSetCharset.in b/tests/data/parser/parseSetCharset.in
new file mode 100644
index 0000000..9c64472
--- /dev/null
+++ b/tests/data/parser/parseSetCharset.in
@@ -0,0 +1 @@
+SET CHARSET 'utf8' \ No newline at end of file
diff --git a/tests/data/parser/parseSetCharset.out b/tests/data/parser/parseSetCharset.out
new file mode 100644
index 0000000..9c21b09
--- /dev/null
+++ b/tests/data/parser/parseSetCharset.out
@@ -0,0 +1 @@
+a:4:{s:5:"query";s:18:"SET CHARSET 'utf8'";s:5:"lexer";O:15:"SqlParser\Lexer":8:{s:6:"strict";b:0;s:3:"str";s:18:"SET CHARSET 'utf8'";s:3:"len";i:18;s:4:"last";i:18;s:4:"list";O:20:"SqlParser\TokensList":3:{s:6:"tokens";a:6:{i:0;O:15:"SqlParser\Token":5:{s:5:"token";s:3:"SET";s:5:"value";s:3:"SET";s:4:"type";i:1;s:5:"flags";i:11;s:8:"position";i:0;}i:1;O:15:"SqlParser\Token":5:{s:5:"token";s:1:" ";s:5:"value";s:1:" ";s:4:"type";i:3;s:5:"flags";i:0;s:8:"position";i:3;}i:2;O:15:"SqlParser\Token":5:{s:5:"token";s:7:"CHARSET";s:5:"value";s:7:"CHARSET";s:4:"type";i:1;s:5:"flags";i:33;s:8:"position";i:4;}i:3;O:15:"SqlParser\Token":5:{s:5:"token";s:1:" ";s:5:"value";s:1:" ";s:4:"type";i:3;s:5:"flags";i:0;s:8:"position";i:11;}i:4;O:15:"SqlParser\Token":5:{s:5:"token";s:6:"'utf8'";s:5:"value";s:4:"utf8";s:4:"type";i:7;s:5:"flags";i:1;s:8:"position";i:12;}i:5;O:15:"SqlParser\Token":5:{s:5:"token";N;s:5:"value";N;s:4:"type";i:9;s:5:"flags";i:0;s:8:"position";N;}}s:5:"count";i:6;s:3:"idx";i:6;}s:9:"delimiter";s:1:";";s:12:"delimiterLen";i:1;s:6:"errors";a:0:{}}s:6:"parser";O:16:"SqlParser\Parser":5:{s:4:"list";r:8;s:6:"strict";b:0;s:6:"errors";a:0:{}s:10:"statements";a:1:{i:0;O:33:"SqlParser\Statements\SetStatement":4:{s:7:"options";O:33:"SqlParser\Components\OptionsArray":1:{s:7:"options";a:1:{i:3;a:4:{s:4:"name";s:7:"CHARSET";s:6:"equals";b:0;s:4:"expr";s:6:"'utf8'";s:5:"value";s:4:"utf8";}}}s:3:"set";a:0:{}s:5:"first";i:0;s:4:"last";i:4;}}s:8:"brackets";i:0;}s:6:"errors";a:2:{s:5:"lexer";a:0:{}s:6:"parser";a:0:{}}} \ No newline at end of file
diff --git a/tests/data/parser/parseSetCharsetError.in b/tests/data/parser/parseSetCharsetError.in
new file mode 100644
index 0000000..f9de298
--- /dev/null
+++ b/tests/data/parser/parseSetCharsetError.in
@@ -0,0 +1 @@
+SET CHARSET \ No newline at end of file
diff --git a/tests/data/parser/parseSetCharsetError.out b/tests/data/parser/parseSetCharsetError.out
new file mode 100644
index 0000000..aa03ca9
--- /dev/null
+++ b/tests/data/parser/parseSetCharsetError.out
@@ -0,0 +1 @@
+a:4:{s:5:"query";s:12:"SET CHARSET ";s:5:"lexer";O:15:"SqlParser\Lexer":8:{s:6:"strict";b:0;s:3:"str";s:12:"SET CHARSET ";s:3:"len";i:12;s:4:"last";i:12;s:4:"list";O:20:"SqlParser\TokensList":3:{s:6:"tokens";a:5:{i:0;O:15:"SqlParser\Token":5:{s:5:"token";s:3:"SET";s:5:"value";s:3:"SET";s:4:"type";i:1;s:5:"flags";i:11;s:8:"position";i:0;}i:1;O:15:"SqlParser\Token":5:{s:5:"token";s:1:" ";s:5:"value";s:1:" ";s:4:"type";i:3;s:5:"flags";i:0;s:8:"position";i:3;}i:2;O:15:"SqlParser\Token":5:{s:5:"token";s:7:"CHARSET";s:5:"value";s:7:"CHARSET";s:4:"type";i:1;s:5:"flags";i:33;s:8:"position";i:4;}i:3;O:15:"SqlParser\Token":5:{s:5:"token";s:1:" ";s:5:"value";s:1:" ";s:4:"type";i:3;s:5:"flags";i:0;s:8:"position";i:11;}i:4;O:15:"SqlParser\Token":5:{s:5:"token";N;s:5:"value";N;s:4:"type";i:9;s:5:"flags";i:0;s:8:"position";N;}}s:5:"count";i:5;s:3:"idx";i:5;}s:9:"delimiter";s:1:";";s:12:"delimiterLen";i:1;s:6:"errors";a:0:{}}s:6:"parser";O:16:"SqlParser\Parser":5:{s:4:"list";r:8;s:6:"strict";b:0;s:6:"errors";a:0:{}s:10:"statements";a:1:{i:0;O:33:"SqlParser\Statements\SetStatement":4:{s:7:"options";O:33:"SqlParser\Components\OptionsArray":1:{s:7:"options";a:1:{i:3;a:4:{s:4:"name";s:7:"CHARSET";s:6:"equals";b:0;s:4:"expr";s:0:"";s:5:"value";s:0:"";}}}s:3:"set";a:0:{}s:5:"first";i:0;s:4:"last";i:3;}}s:8:"brackets";i:0;}s:6:"errors";a:2:{s:5:"lexer";a:0:{}s:6:"parser";a:1:{i:0;a:3:{i:0;s:52:"Value/Expression for the option CHARSET was expected";i:1;r:28;i:2;i:0;}}}} \ No newline at end of file
diff --git a/tests/data/parser/parseSetError1.in b/tests/data/parser/parseSetError1.in
new file mode 100644
index 0000000..dca44f9
--- /dev/null
+++ b/tests/data/parser/parseSetError1.in
@@ -0,0 +1 @@
+SET CHARSET 'utf8' CHARACTER SET 'utf8' \ No newline at end of file
diff --git a/tests/data/parser/parseSetError1.out b/tests/data/parser/parseSetError1.out
new file mode 100644
index 0000000..ef9bfed
--- /dev/null
+++ b/tests/data/parser/parseSetError1.out
@@ -0,0 +1 @@
+a:4:{s:5:"query";s:39:"SET CHARSET 'utf8' CHARACTER SET 'utf8'";s:5:"lexer";O:15:"SqlParser\Lexer":8:{s:6:"strict";b:0;s:3:"str";s:39:"SET CHARSET 'utf8' CHARACTER SET 'utf8'";s:3:"len";i:39;s:4:"last";i:39;s:4:"list";O:20:"SqlParser\TokensList":3:{s:6:"tokens";a:10:{i:0;O:15:"SqlParser\Token":5:{s:5:"token";s:3:"SET";s:5:"value";s:3:"SET";s:4:"type";i:1;s:5:"flags";i:11;s:8:"position";i:0;}i:1;O:15:"SqlParser\Token":5:{s:5:"token";s:1:" ";s:5:"value";s:1:" ";s:4:"type";i:3;s:5:"flags";i:0;s:8:"position";i:3;}i:2;O:15:"SqlParser\Token":5:{s:5:"token";s:7:"CHARSET";s:5:"value";s:7:"CHARSET";s:4:"type";i:1;s:5:"flags";i:33;s:8:"position";i:4;}i:3;O:15:"SqlParser\Token":5:{s:5:"token";s:1:" ";s:5:"value";s:1:" ";s:4:"type";i:3;s:5:"flags";i:0;s:8:"position";i:11;}i:4;O:15:"SqlParser\Token":5:{s:5:"token";s:6:"'utf8'";s:5:"value";s:4:"utf8";s:4:"type";i:7;s:5:"flags";i:1;s:8:"position";i:12;}i:5;O:15:"SqlParser\Token":5:{s:5:"token";s:1:" ";s:5:"value";s:1:" ";s:4:"type";i:3;s:5:"flags";i:0;s:8:"position";i:18;}i:6;O:15:"SqlParser\Token":5:{s:5:"token";s:13:"CHARACTER SET";s:5:"value";s:13:"CHARACTER SET";s:4:"type";i:1;s:5:"flags";i:7;s:8:"position";i:19;}i:7;O:15:"SqlParser\Token":5:{s:5:"token";s:1:" ";s:5:"value";s:1:" ";s:4:"type";i:3;s:5:"flags";i:0;s:8:"position";i:32;}i:8;O:15:"SqlParser\Token":5:{s:5:"token";s:6:"'utf8'";s:5:"value";s:4:"utf8";s:4:"type";i:7;s:5:"flags";i:1;s:8:"position";i:33;}i:9;O:15:"SqlParser\Token":5:{s:5:"token";N;s:5:"value";N;s:4:"type";i:9;s:5:"flags";i:0;s:8:"position";N;}}s:5:"count";i:10;s:3:"idx";i:10;}s:9:"delimiter";s:1:";";s:12:"delimiterLen";i:1;s:6:"errors";a:0:{}}s:6:"parser";O:16:"SqlParser\Parser":5:{s:4:"list";r:8;s:6:"strict";b:0;s:6:"errors";a:0:{}s:10:"statements";a:1:{i:0;O:33:"SqlParser\Statements\SetStatement":4:{s:7:"options";O:33:"SqlParser\Components\OptionsArray":1:{s:7:"options";a:2:{i:3;a:4:{s:4:"name";s:7:"CHARSET";s:6:"equals";b:0;s:4:"expr";s:6:"'utf8'";s:5:"value";s:4:"utf8";}i:5;a:4:{s:4:"name";s:13:"CHARACTER SET";s:6:"equals";b:0;s:4:"expr";s:6:"'utf8'";s:5:"value";s:4:"utf8";}}}s:3:"set";a:0:{}s:5:"first";i:0;s:4:"last";i:8;}}s:8:"brackets";i:0;}s:6:"errors";a:2:{s:5:"lexer";a:0:{}s:6:"parser";a:1:{i:0;a:3:{i:0;s:37:"This option conflicts with "CHARSET".";i:1;r:46;i:2;i:0;}}}} \ No newline at end of file
diff --git a/tests/data/parser/parseSetNames.in b/tests/data/parser/parseSetNames.in
new file mode 100644
index 0000000..1b20c3f
--- /dev/null
+++ b/tests/data/parser/parseSetNames.in
@@ -0,0 +1 @@
+SET NAMES 'utf8' \ No newline at end of file
diff --git a/tests/data/parser/parseSetNames.out b/tests/data/parser/parseSetNames.out
new file mode 100644
index 0000000..193de44
--- /dev/null
+++ b/tests/data/parser/parseSetNames.out
@@ -0,0 +1 @@
+a:4:{s:5:"query";s:16:"SET NAMES 'utf8'";s:5:"lexer";O:15:"SqlParser\Lexer":8:{s:6:"strict";b:0;s:3:"str";s:16:"SET NAMES 'utf8'";s:3:"len";i:16;s:4:"last";i:16;s:4:"list";O:20:"SqlParser\TokensList":3:{s:6:"tokens";a:6:{i:0;O:15:"SqlParser\Token":5:{s:5:"token";s:3:"SET";s:5:"value";s:3:"SET";s:4:"type";i:1;s:5:"flags";i:11;s:8:"position";i:0;}i:1;O:15:"SqlParser\Token":5:{s:5:"token";s:1:" ";s:5:"value";s:1:" ";s:4:"type";i:3;s:5:"flags";i:0;s:8:"position";i:3;}i:2;O:15:"SqlParser\Token":5:{s:5:"token";s:5:"NAMES";s:5:"value";s:5:"NAMES";s:4:"type";i:1;s:5:"flags";i:1;s:8:"position";i:4;}i:3;O:15:"SqlParser\Token":5:{s:5:"token";s:1:" ";s:5:"value";s:1:" ";s:4:"type";i:3;s:5:"flags";i:0;s:8:"position";i:9;}i:4;O:15:"SqlParser\Token":5:{s:5:"token";s:6:"'utf8'";s:5:"value";s:4:"utf8";s:4:"type";i:7;s:5:"flags";i:1;s:8:"position";i:10;}i:5;O:15:"SqlParser\Token":5:{s:5:"token";N;s:5:"value";N;s:4:"type";i:9;s:5:"flags";i:0;s:8:"position";N;}}s:5:"count";i:6;s:3:"idx";i:6;}s:9:"delimiter";s:1:";";s:12:"delimiterLen";i:1;s:6:"errors";a:0:{}}s:6:"parser";O:16:"SqlParser\Parser":5:{s:4:"list";r:8;s:6:"strict";b:0;s:6:"errors";a:0:{}s:10:"statements";a:1:{i:0;O:33:"SqlParser\Statements\SetStatement":4:{s:7:"options";O:33:"SqlParser\Components\OptionsArray":1:{s:7:"options";a:1:{i:3;a:4:{s:4:"name";s:5:"NAMES";s:6:"equals";b:0;s:4:"expr";s:6:"'utf8'";s:5:"value";s:4:"utf8";}}}s:3:"set";a:0:{}s:5:"first";i:0;s:4:"last";i:4;}}s:8:"brackets";i:0;}s:6:"errors";a:2:{s:5:"lexer";a:0:{}s:6:"parser";a:0:{}}} \ No newline at end of file
diff --git a/tests/data/parser/parseSetNamesError.in b/tests/data/parser/parseSetNamesError.in
new file mode 100644
index 0000000..3b6f833
--- /dev/null
+++ b/tests/data/parser/parseSetNamesError.in
@@ -0,0 +1 @@
+SET NAMES \ No newline at end of file
diff --git a/tests/data/parser/parseSetNamesError.out b/tests/data/parser/parseSetNamesError.out
new file mode 100644
index 0000000..eeed89c
--- /dev/null
+++ b/tests/data/parser/parseSetNamesError.out
@@ -0,0 +1 @@
+a:4:{s:5:"query";s:10:"SET NAMES ";s:5:"lexer";O:15:"SqlParser\Lexer":8:{s:6:"strict";b:0;s:3:"str";s:10:"SET NAMES ";s:3:"len";i:10;s:4:"last";i:10;s:4:"list";O:20:"SqlParser\TokensList":3:{s:6:"tokens";a:5:{i:0;O:15:"SqlParser\Token":5:{s:5:"token";s:3:"SET";s:5:"value";s:3:"SET";s:4:"type";i:1;s:5:"flags";i:11;s:8:"position";i:0;}i:1;O:15:"SqlParser\Token":5:{s:5:"token";s:1:" ";s:5:"value";s:1:" ";s:4:"type";i:3;s:5:"flags";i:0;s:8:"position";i:3;}i:2;O:15:"SqlParser\Token":5:{s:5:"token";s:5:"NAMES";s:5:"value";s:5:"NAMES";s:4:"type";i:1;s:5:"flags";i:1;s:8:"position";i:4;}i:3;O:15:"SqlParser\Token":5:{s:5:"token";s:1:" ";s:5:"value";s:1:" ";s:4:"type";i:3;s:5:"flags";i:0;s:8:"position";i:9;}i:4;O:15:"SqlParser\Token":5:{s:5:"token";N;s:5:"value";N;s:4:"type";i:9;s:5:"flags";i:0;s:8:"position";N;}}s:5:"count";i:5;s:3:"idx";i:5;}s:9:"delimiter";s:1:";";s:12:"delimiterLen";i:1;s:6:"errors";a:0:{}}s:6:"parser";O:16:"SqlParser\Parser":5:{s:4:"list";r:8;s:6:"strict";b:0;s:6:"errors";a:0:{}s:10:"statements";a:1:{i:0;O:33:"SqlParser\Statements\SetStatement":4:{s:7:"options";O:33:"SqlParser\Components\OptionsArray":1:{s:7:"options";a:1:{i:3;a:4:{s:4:"name";s:5:"NAMES";s:6:"equals";b:0;s:4:"expr";s:0:"";s:5:"value";s:0:"";}}}s:3:"set";a:0:{}s:5:"first";i:0;s:4:"last";i:3;}}s:8:"brackets";i:0;}s:6:"errors";a:2:{s:5:"lexer";a:0:{}s:6:"parser";a:1:{i:0;a:3:{i:0;s:50:"Value/Expression for the option NAMES was expected";i:1;r:28;i:2;i:0;}}}} \ No newline at end of file