Skip to content

Commit 80c360e

Browse files
committed
Add schema not support error exception
1 parent 6d2094d commit 80c360e

File tree

2 files changed

+18
-0
lines changed

2 files changed

+18
-0
lines changed

Diff for: dataherald/sql_database/services/database_connection.py

+17
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,11 @@
1010
from dataherald.sql_database.models.types import DatabaseConnection
1111
from dataherald.types import DatabaseConnectionRequest
1212
from dataherald.utils.encrypt import FernetEncrypt
13+
from dataherald.utils.error_codes import CustomError
14+
15+
16+
class SchemaNotSupportedError(CustomError):
17+
pass
1318

1419

1520
class DatabaseConnectionService:
@@ -98,6 +103,18 @@ def create(
98103
file_storage=database_connection_request.file_storage,
99104
metadata=database_connection_request.metadata,
100105
)
106+
if database_connection.schemas and database_connection.dialect in [
107+
"redshift",
108+
"awsathena",
109+
"mssql",
110+
"mysql",
111+
"clickhouse",
112+
"duckdb",
113+
]:
114+
raise SchemaNotSupportedError(
115+
"Schema not supported for this db",
116+
description=f"The {database_connection.dialect} dialect doesn't support schemas",
117+
)
101118
if not database_connection.schemas:
102119
database_connection.schemas = self.get_current_schema(database_connection)
103120

Diff for: dataherald/utils/error_codes.py

+1
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
"SQLGenerationNotFoundError": "sql_generation_not_found",
2020
"NLGenerationError": "nl_generation_not_created",
2121
"MalformedGoldenSQLError": "invalid_golden_sql",
22+
"SchemaNotSupportedError": "schema_not_supported",
2223
}
2324

2425

0 commit comments

Comments
 (0)