File tree Expand file tree Collapse file tree 4 files changed +28
-1
lines changed
text_2_sql/text_2_sql_core/src/text_2_sql_core/connectors Expand file tree Collapse file tree 4 files changed +28
-1
lines changed Original file line number Diff line number Diff line change 8
8
import logging
9
9
import json
10
10
11
+ from text_2_sql_core .utils .database import DatabaseEngine
12
+
11
13
12
14
class DatabricksSqlConnector (SqlConnector ):
15
+ def __init__ (self ):
16
+ super ().__init__ ()
17
+
18
+ self .database_engine = DatabaseEngine .DATABRICKS
19
+
13
20
async def query_execution (
14
21
self ,
15
22
sql_query : Annotated [
Original file line number Diff line number Diff line change 8
8
import logging
9
9
import json
10
10
11
+ from text_2_sql_core .utils .database import DatabaseEngine
12
+
11
13
12
14
class SnowflakeSqlConnector (SqlConnector ):
15
+ def __init__ (self ):
16
+ super ().__init__ ()
17
+
18
+ self .database_engine = DatabaseEngine .SNOWFLAKE
19
+
13
20
async def query_execution (
14
21
self ,
15
22
sql_query : Annotated [
Original file line number Diff line number Diff line change @@ -28,6 +28,8 @@ def __init__(self):
28
28
29
29
self .ai_search_connector = ConnectorFactory .get_ai_search_connector ()
30
30
31
+ self .database_engine = None
32
+
31
33
def get_current_datetime (self ) -> str :
32
34
"""Get the current datetime."""
33
35
return datetime .now ().strftime ("%d/%m/%Y, %H:%M:%S" )
@@ -138,7 +140,11 @@ async def query_validation(
138
140
"""Validate the SQL query."""
139
141
try :
140
142
logging .info ("Validating SQL Query: %s" , sql_query )
141
- sqlglot .transpile (sql_query )
143
+ sqlglot .transpile (
144
+ sql_query ,
145
+ read = self .database_engine .value .lower (),
146
+ error_level = sqlglot .ErrorLevel .ERROR ,
147
+ )
142
148
except sqlglot .errors .ParseError as e :
143
149
logging .error ("SQL Query is invalid: %s" , e .errors )
144
150
return e .errors
Original file line number Diff line number Diff line change 7
7
import logging
8
8
import json
9
9
10
+ from text_2_sql_core .utils .database import DatabaseEngine
11
+
10
12
11
13
class TSQLSqlConnector (SqlConnector ):
14
+ def __init__ (self ):
15
+ super ().__init__ ()
16
+
17
+ self .database_engine = DatabaseEngine .TSQL
18
+
12
19
async def query_execution (
13
20
self ,
14
21
sql_query : Annotated [
You can’t perform that action at this time.
0 commit comments