Coverage for packages/sql-smith/src/sql_smith/engine/mysql_engine.py: 100%

11 statements  

« prev     ^ index     » next       coverage.py v7.11.0, created at 2024-01-01 00:00 +0000

1from sql_smith.engine import BasicEngine 

2from sql_smith.query.mysql import InsertQuery, SelectQuery 

3 

4 

5class MysqlEngine(BasicEngine): 

6 """A custom engine for MySQL SQL dialect.""" 

7 

8 def make_select(self) -> "SelectQuery": 

9 """Creates a custom MySql SELECT query. 

10 

11 The MySQL select query supports SQL_CALC_FOUND_ROWS. 

12 """ 

13 return SelectQuery(self) 

14 

15 def make_insert(self) -> "InsertQuery": 

16 """Creates a custom MySql INSERT query. 

17 

18 The MySQL insert query supports IGNORE. 

19 """ 

20 return InsertQuery(self) 

21 

22 def escape_identifier(self, identifier: str) -> str: 

23 """Escapes the identifier by surrounding it with backticks.""" 

24 return "`{}`".format(identifier) 

25 

26 def get_parameter_placeholder(self): 

27 return "%s"