Python Azure(IIS)上的SQLite查询长度是否有限
我正在运行一个flask/python应用程序,该应用程序在IIS windows服务器上使用sqlite3Python Azure(IIS)上的SQLite查询长度是否有限,python,sqlite,azure,iis,flask,Python,Sqlite,Azure,Iis,Flask,我正在运行一个flask/python应用程序,该应用程序在IIS windows服务器上使用sqlite3 当SQL查询长度约为2100字节或更大时,查询将失败(在fetchall阶段) 人工缩短查询时(用于调试)(根据您的描述,根据我的理解,我认为您创建了一个flask/python应用程序作为SQL查询客户端,通过HTTPGET方法对SQL语句进行请求操作,但是maxQueryString的默认值是2048,请参见II的配置部分这是我的参考页 因此,有两种方法可以解决这个问题 使用HTT
- 当SQL查询长度约为2100字节或更大时,查询将失败(在fetchall阶段)李>
- 人工缩短查询时(用于调试)(根据您的描述,根据我的理解,我认为您创建了一个
应用程序作为SQL查询客户端,通过HTTPflask/python
方法对SQL语句进行请求操作,但是GET
的默认值是2048,请参见II的maxQueryString
部分这是我的参考页 因此,有两种方法可以解决这个问题配置
- 使用HTTP
方法发送查询SQL语句的请求。建议避免请求限制POST
- 通过按照上述参考页面进行配置,更改
值maxQueryString
它不是http GET/POST-它是使用cur.execute(query,varList)运行的SQLite查询@IritShahar您能否改进您的描述以了解更多详细信息?正如您所说,在Python中运行的SQLite查询
cur.execute
,与IIS无关。IIS就像http服务器一样,通过Python的wsgi接口传递http请求。当相同的flask/Python应用程序在非IIS服务器上运行时,一切正常。但是,在IIS中,我t在fask hansler中遇到错误0x80070102。该查询从python函数调用到sqlite3。随后将结果操纵到http(之前失败)。查询使用长列表中的“in(?,,..”格式。当列表缩短时(通过web中的用户选择),查询成功。当列表已满时(可能达到几百个)查询失败。查询看起来像cur.execute(query,vart)。query=SELECT…其中x IN(?,,,,,,,,,,,)和y IN(?,,,,?)etc.Var为every?@IritShahar匹配一个数字错误代码0x80070102
似乎是由于请求处理程序超出了配置的请求超时,请参阅以尝试解决它。我认为问题与查询中的变量数有关。当它为59时,它工作,92失败