diff --git a/src/sql/src/statements.rs b/src/sql/src/statements.rs index bc5bd6821a..f68c9434e9 100644 --- a/src/sql/src/statements.rs +++ b/src/sql/src/statements.rs @@ -107,6 +107,8 @@ fn parse_string_to_value( target_unit: t.unit(), }, )?)) + } else if let Ok(ts) = i64::from_str(s.as_str()) { + Ok(Value::Timestamp(Timestamp::new(ts, t.unit()))) } else { ParseSqlValueSnafu { msg: format!("Failed to parse {s} to Timestamp value"), diff --git a/tests/cases/standalone/common/insert/mysql_insert.result b/tests/cases/standalone/common/insert/mysql_insert.result index a2813f3a3b..12176b2e88 100644 --- a/tests/cases/standalone/common/insert/mysql_insert.result +++ b/tests/cases/standalone/common/insert/mysql_insert.result @@ -13,7 +13,7 @@ INSERT INTO integers VALUES (11, 1), (12, 2); affected_rows: 2 -- SQLNESS PROTOCOL MYSQL -INSERT INTO integers VALUES ('13', 3), ('14', 4); +INSERT INTO integers VALUES ('13', '3'), ('14', '4'); affected_rows: 2 diff --git a/tests/cases/standalone/common/insert/mysql_insert.sql b/tests/cases/standalone/common/insert/mysql_insert.sql index f06ee4c983..40259b8b0f 100644 --- a/tests/cases/standalone/common/insert/mysql_insert.sql +++ b/tests/cases/standalone/common/insert/mysql_insert.sql @@ -9,7 +9,7 @@ CREATE TABLE integers ( INSERT INTO integers VALUES (11, 1), (12, 2); -- SQLNESS PROTOCOL MYSQL -INSERT INTO integers VALUES ('13', 3), ('14', 4); +INSERT INTO integers VALUES ('13', '3'), ('14', '4'); -- SQLNESS PROTOCOL MYSQL INSERT INTO integers VALUES ('15a', 5), ('16', 6);