#sql-server #sqlalchemy #pyodbc
Вопрос:
Я хочу передать список в мое необработанное предложение sql where, но я продолжаю получать ошибку «sqlalchemy.exc.DBAPIError: (pyodbc.Error) (‘HY004’, ‘[HY004] [Microsoft][Драйвер ODBC SQL Server]Недопустимый тип данных SQL (0) (SQLBindParameter)'»
id = [1, 2, 3] query = text("select * from table where col in :id") conn.execute(query, {'id': tuple(id)})
Это должно сработать (я рассматриваю их как решения для StackOverflow), но, может быть, не для sqlserver? Как мне заставить его работать для mssql?
Изменить: Нашел решение в другом посте SO.
id = [1, 2, 3] query = text("select * from table where col in :id") query = query.bindparams(bindparam('id', expanding=True)) conn.execute(query, {'id': id})