From c809d623326117ed9e822ba61170cfa24b29d2b0 Mon Sep 17 00:00:00 2001 From: Martin Zellner Date: Tue, 15 Jun 2021 16:12:32 +0200 Subject: [PATCH] fix: use parameter data type instead of hardcoded nvarchar(32) --- mssql/functions.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mssql/functions.py b/mssql/functions.py index 6317ef4e..1ec51416 100644 --- a/mssql/functions.py +++ b/mssql/functions.py @@ -126,7 +126,8 @@ def split_parameter_list_as_sql(self, compiler, connection): with connection.cursor() as cursor: cursor.execute("IF OBJECT_ID('tempdb.dbo.#Temp_params', 'U') IS NOT NULL DROP TABLE #Temp_params; ") - cursor.execute("CREATE TABLE #Temp_params (params nvarchar(32))") + parameter_data_type = self.lhs.field.db_type(connection) + cursor.execute(f"CREATE TABLE #Temp_params (params {parameter_data_type})") for offset in range(0, len(rhs_params), 1000): sqls_params = rhs_params[offset: offset + 1000] sqls_params = ", ".join("('{}')".format(item) for item in sqls_params)