小编Cha*_*nya的帖子

Pyodbc + sqlalchemy 超过 2100 项失败

在下面的代码中,当employee_code_list 超过2000 项时抛出错误,如下所述。但是,当列表少于 2000 项时,它可以完美运行。

query = session.query(TblUserEmployee, TblUser).filter(
                and_(
                    (TblUser.UserId == TblUserEmployee.EmployeeId),
 (func.lower(TblUserEmployee.EmployeeCode).in_(employee_code_list)),
                    (TblUser.OrgnId == MIG_CONSTANTS.context.organizationid),
                    (TblUser.UserTypeId == user_type)
                ))

            results = query.all()
Run Code Online (Sandbox Code Playgroud)

这是引发的错误的相关部分:

File ""site-packages\sqlalchemy\util\compat.py"", line 203, in raise_from_cause
  File ""site-packages\sqlalchemy\engine\base.py"", line 1193, in _execute_context
  File ""site-packages\sqlalchemy\engine\default.py"", line 507, in do_execute
DBAPIError: (pyodbc.Error) ('07002', u'[07002] [Microsoft][ODBC Driver 17 for SQL Server]COUNT field incorrect or syntax error (0) (SQLExecDirectW)') [SQL: u'SELECT [tblTaxGroup].[TaxGroupId] AS [tblTaxGroup_TaxGroupId], [tblTaxGroup].[Code] AS [tblTaxGroup_Code], [tblTaxGroupCenter].[CenterId] AS [tblTaxGroupCenter_CenterId] \nFROM [tblTaxGroup], [tblTaxGroupCenter], [tblCenterTax] \nWHERE [tblTaxGroup].[OrganizationId] = ? AND …
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy pyodbc

3
推荐指数
1
解决办法
1371
查看次数

标签 统计

pyodbc ×1

python ×1

sqlalchemy ×1