Skip to content

Commit 184e76e

Browse files
committed
fix: check sql only contain read operation #814
1 parent f33188a commit 184e76e

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

backend/apps/db/db.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import oracledb
1111
import psycopg2
1212
import pymssql
13+
import re
1314

1415
from apps.db.db_sql import get_table_sql, get_field_sql, get_version_sql
1516
from common.error import ParseSQLResultError
@@ -578,6 +579,8 @@ def exec_sql(ds: CoreDatasource | AssistantOutDsSchema, sql: str, origin_column=
578579

579580
def check_sql_read(sql: str, dialect=None):
580581
try:
582+
ansi_escape = re.compile(r'\x1b\[[0-9;]*m')
583+
sql = ansi_escape.sub('', sql)
581584

582585
statements = sqlglot.parse(sql, dialect=dialect)
583586

0 commit comments

Comments
 (0)