diff --git a/test/box/sql.result b/test/box/sql.result
index 1a557c1d6bea0af58c1f42f25765d4a38b6db9fc..1cdae55115318df9863c7cd81210e22752221231 100644
--- a/test/box/sql.result
+++ b/test/box/sql.result
@@ -3,7 +3,7 @@ ok
 ---
 select * from t0
 An error occurred: ERR_CODE_ILLEGAL_PARAMS, 'Illegal parameters'
-insert into t0 values (1, "I am a tuple")
+insert into t0 values (1, 'I am a tuple')
 Insert OK, 1 row affected
 select * from t0 where k0 = 1
 Found 1 tuple:
@@ -29,39 +29,39 @@ delete from t0 where k0 = 1
 Delete OK, 1 row affected
 select * from t0 where k0 = 1
 No match
-update t0 set k1 = "I am a new tuple" where k0=1
-Insert OK, 0 row affected
-select * from t0 where k0 = 1
+update t0 set k1 = 'I am a new tuple' where k0=1
+Update OK, 0 row affected
+select * from t0 where k0=1
 No match
-insert into t0 values (1, "I am a new tuple")
+insert into t0 values (1, 'I am a new tuple')
 Insert OK, 1 row affected
 select * from t0 where k0 = 1
 Found 1 tuple:
 [1, 'I am a new tuple']
-update t0 set k1 = "I am the newest tuple" where k0=1
-Insert OK, 1 row affected
+update t0 set k1 = 'I am the newest tuple' where k0=1
+Update OK, 1 row affected
 select * from t0 where k0 = 1
 Found 1 tuple:
 [1, 'I am the newest tuple']
-update t0 set k1 = "Huh", k2 = "Oh-ho-ho" where k0=1
+update t0 set k1 = 'Huh', k2 = 'Oh-ho-ho' where k0=1
 An error occurred: ERR_CODE_ILLEGAL_PARAMS, 'Illegal parameters'
 select * from t0 where k0 = 1
 Found 1 tuple:
 [1, 'I am the newest tuple']
-insert into t0 values (1, "I am a new tuple", "stub")
-Insert OK, 1 row affected
-update t0 set k1 = "Huh", k2 = "Oh-ho-ho" where k0=1
+insert into t0 values (1, 'I am a new tuple', 'stub')
 Insert OK, 1 row affected
+update t0 set k1 = 'Huh', k2 = 'Oh-ho-ho' where k0=1
+Update OK, 1 row affected
 select * from t0 where k0 = 1
 Found 1 tuple:
 [1, 'Huh', 'Oh-ho-ho']
-update t0 set k1 = "", k2 = "" where k0=1
-Insert OK, 1 row affected
+update t0 set k1 = '', k2 = '' where k0=1
+Update OK, 1 row affected
 select * from t0 where k0 = 1
 Found 1 tuple:
 [1, '', '']
 update t0 set k1 = 2, k2 = 3 where k0=1
-Insert OK, 1 row affected
+Update OK, 1 row affected
 select * from t0 where k0 = 1
 Found 1 tuple:
 [1, 2, 3]
diff --git a/test/box/sql.test b/test/box/sql.test
index 63f2367b437515e854837e3f464c2506f0f12366..727bb7d69147557242be11818549609723d42c53 100644
--- a/test/box/sql.test
+++ b/test/box/sql.test
@@ -1,43 +1,45 @@
 # encoding: tarantool
-exec sql 'ping'
+exec sql "ping"
 # xxx: bug -- currently selects no rows
-exec sql 'select * from t0'
-exec sql 'insert into t0 values (1, "I am a tuple")'
-exec sql 'select * from t0 where k0 = 1'
+exec sql "select * from t0"
+exec sql "insert into t0 values (1, 'I am a tuple')"
+exec sql "select * from t0 where k0 = 1"
 # currently there is no way to find out how many records
 # a namespace contains 
-exec sql 'select * from t0 where k0 = 0'
-exec sql 'select * from t0 where k0 = 2'
+exec sql "select * from t0 where k0 = 0"
+exec sql "select * from t0 where k0 = 2"
 server.restart()
-exec sql 'select * from t0 where k0 = 1'
-exec admin "save snapshot"
-exec sql 'select * from t0 where k0 = 1'
+exec sql "select * from t0 where k0 = 1"
+exec admin 'save snapshot'
+exec sql "select * from t0 where k0 = 1"
 server.restart()
-exec sql 'select * from t0 where k0 = 1'
-exec sql 'delete from t0 where k0 = 1'
-exec sql 'select * from t0 where k0 = 1'
-exec sql 'update t0 set k1 = "I am a new tuple" where k0=1'
-exec sql 'select * from t0 where k0 = 1'
-exec sql 'insert into t0 values (1, "I am a new tuple")'
-exec sql 'select * from t0 where k0 = 1'
-exec sql 'update t0 set k1 = "I am the newest tuple" where k0=1'
-exec sql 'select * from t0 where k0 = 1'
+exec sql "select * from t0 where k0 = 1"
+exec sql "delete from t0 where k0 = 1"
+exec sql "select * from t0 where k0 = 1"
+# xxx: update comes through, returns 0 rows affected 
+exec sql "update t0 set k1 = 'I am a new tuple' where k0=1"
+# nothing is selected, since nothing was there
+exec sql "select * from t0 where k0=1"
+exec sql "insert into t0 values (1, 'I am a new tuple')"
+exec sql "select * from t0 where k0 = 1"
+exec sql "update t0 set k1 = 'I am the newest tuple' where k0=1"
+exec sql "select * from t0 where k0 = 1"
 # this is illegal, can't change tuple dimension with update
-exec sql 'update t0 set k1 = "Huh", k2 = "Oh-ho-ho" where k0=1'
-exec sql 'select * from t0 where k0 = 1'
-exec sql 'insert into t0 values (1, "I am a new tuple", "stub")'
-exec sql 'update t0 set k1 = "Huh", k2 = "Oh-ho-ho" where k0=1'
-exec sql 'select * from t0 where k0 = 1'
+exec sql "update t0 set k1 = 'Huh', k2 = 'Oh-ho-ho' where k0=1"
+exec sql "select * from t0 where k0 = 1"
+exec sql "insert into t0 values (1, 'I am a new tuple', 'stub')"
+exec sql "update t0 set k1 = 'Huh', k2 = 'Oh-ho-ho' where k0=1"
+exec sql "select * from t0 where k0 = 1"
 # check empty strings
-exec sql 'update t0 set k1 = "", k2 = "" where k0=1'
-exec sql 'select * from t0 where k0 = 1'
+exec sql "update t0 set k1 = '', k2 = '' where k0=1"
+exec sql "select * from t0 where k0 = 1"
 # check type change 
-exec sql 'update t0 set k1 = 2, k2 = 3 where k0=1'
-exec sql 'select * from t0 where k0 = 1'
+exec sql "update t0 set k1 = 2, k2 = 3 where k0=1"
+exec sql "select * from t0 where k0 = 1"
 # check limits
-exec sql 'insert into t0 values (0)'
-exec sql 'select * from t0 where k0=0'
-exec sql 'insert into t0 values (4294967295)'
-exec sql 'select * from t0 where k0=4294967295'
+exec sql "insert into t0 values (0)"
+exec sql "select * from t0 where k0=0"
+exec sql "insert into t0 values (4294967295)"
+exec sql "select * from t0 where k0=4294967295"
 
 # vim: syntax=python
diff --git a/test/lib/sql.g b/test/lib/sql.g
index 4e464e36a7cb9d2d7b9b779d1a18fb16d0d9e1b9..087fff5383b30dd8c4cc0f927fee1aec045c375d 100644
--- a/test/lib/sql.g
+++ b/test/lib/sql.g
@@ -10,7 +10,7 @@ parser sql:
     ignore:           '\\s+'
     token NUM:        '[+-]?[0-9]+'
     token ID:         '[a-z_]+[0-9]+' 
-    token STR:        '"([^\\"]+|\\\\.)*"'
+    token STR:        '\'([^\']+|\\\\.)*\''
     token PING:       'ping'
     token INSERT:     'insert'
     token UPDATE:     'update'
diff --git a/test/lib/sql.py b/test/lib/sql.py
index 73030fdc04bd09792fd62c72d32ff0788e7e8787..f1ef9ca2542ecdece96b5e3cb8e1742a250fbefd 100644
--- a/test/lib/sql.py
+++ b/test/lib/sql.py
@@ -19,7 +19,7 @@ class sqlScanner(runtime.Scanner):
         ('\\s+', re.compile('\\s+')),
         ('NUM', re.compile('[+-]?[0-9]+')),
         ('ID', re.compile('[a-z_]+[0-9]+')),
-        ('STR', re.compile('"([^\\"]+|\\\\.)*"')),
+        ('STR', re.compile("'([^']+|\\\\.)*'")),
         ('PING', re.compile('ping')),
         ('INSERT', re.compile('insert')),
         ('UPDATE', re.compile('update')),
diff --git a/test/lib/sql_ast.py b/test/lib/sql_ast.py
index fa0e04e50bb2ea777a6676a57d1eb6ea4a7bbea3..af2b21a4eba50e4841fc0cc826c2f078f6f9130a 100644
--- a/test/lib/sql_ast.py
+++ b/test/lib/sql_ast.py
@@ -208,7 +208,7 @@ class StatementUpdate(StatementPing):
     if return_code:
       return format_error(return_code)
     (result_code, row_count) = struct.unpack("<LL", response)
-    return "Insert OK, {0} row affected".format(row_count)
+    return "Update OK, {0} row affected".format(row_count)
 
 class StatementDelete(StatementPing):
   reqeust_type = DELETE_REQUEST_TYPE