Это мое табличное значение, которое я хочу передать в качестве параметра.
Код: Выделить всё
table_values = [
'table_type_name',
'dbo',
(1,None,'Test')
]
Код: Выделить всё
params = [(table_values,None)]
Код: Выделить всё
execute(SAVE_QUERY, params)
Код: Выделить всё
SAVE_QUERY= """
SET NOCOUNT ON;
SET ANSI_NULLS ON;
DECLARE @table_values TABLE = ?;
UPDATE
table_name
SET
contacts.is_active = 0,
FROM
table_name
LEFT JOIN
@table_values CC
ON
CC.id = contacts.id
WHERE
CC.email IS NULL;
"""
[42000] [Microsoft][ODBC Driver 18 для SQL Server] [SQL Server]Неправильный синтаксис рядом с '='. (102) (СклExecDirectW); [42000] [Microsoft][Драйвер ODBC 18 для SQL Server][SQL Server]Не удалось подготовить операторы. (8180)
Как лучше всего получить данные TVP в этом запросе и сохранить их в переменной для использования в последующей части запроса.
Я пробовал удалить оператор DECLARE, но он не работает.
Подробнее здесь: https://stackoverflow.com/questions/791 ... hon-pyodbc
Мобильная версия