Python-从文件执行多个SQL查询
我试图从Python 2.7.13中的一个文件执行SQL查询,在显示结果集时出现以下错误。 文件中的SQL语句很简单,如表中的Python-从文件执行多个SQL查询,sql,sql-server,python-2.7,pymssql,Sql,Sql Server,Python 2.7,Pymssql,我试图从Python 2.7.13中的一个文件执行SQL查询,在显示结果集时出现以下错误。 文件中的SQL语句很简单,如表中的count(*),但如果这种逻辑有效,我需要用复杂的查询替换它 错误 Info : (7,) Traceback (most recent call last): File "SQLserver_loop.py", line 19, in <module> fields = c.fetchall() File "pymssql.pyx", li
count(*)
,但如果这种逻辑有效,我需要用复杂的查询替换它
错误
Info : (7,)
Traceback (most recent call last):
File "SQLserver_loop.py", line 19, in <module>
fields = c.fetchall()
File "pymssql.pyx", line 542, in pymssql.Cursor.fetchall (pymssql.c:9352)
pymssql.OperationalError: Statement not executed or executed statement has no re
sultset
错误消息
**SQL File - ZooDatabase.sql**
select count(*) from emp2;
select count(*) from emp1;
**Error Log with SQL print statement output:**
C:\Python27\pycode>python SQLserver_loop.py
SELECT count(*) FROM emp2
Info : (7,)
SELECT count(*) FROM emp1
Info : (7,)
Traceback (most recent call last):
File "SQLserver_loop.py", line 20, in <module>
fields = c.fetchall()
File "pymssql.pyx", line 542, in pymssql.Cursor.fetchall (pymssql.c:9352)
pymssql.OperationalError: Statement not executed or executed statement has no re
sultset
**SQL文件-ZooDatabase.SQL**
从emp2中选择计数(*);
从emp1中选择计数(*);
**SQL打印语句输出的错误日志:**
C:\Python27\pycode>pythonsqlserver\u loop.py
从emp2中选择计数(*)
资料:(7,)
从emp1中选择计数(*)
资料:(7,)
回溯(最近一次呼叫最后一次):
文件“SQLserver_loop.py”,第20行,在
fields=c.fetchall()
pymssql.Cursor.fetchall(pymssql.c:9352)中第542行的文件“pymssql.pyx”
pymssql.OperationalError:未执行语句或已执行语句没有re
苏尔塞特
fields=c.fetchall()
导致错误,我对其进行了注释,现在可以正常工作了
for command in sqlCommands:
#print command
c.execute(command)
#fields = c.fetchall()
for row in c:
print (row)
fields=c.fetchall()
导致了错误,我对其进行了注释,现在可以正常工作了
for command in sqlCommands:
#print command
c.execute(command)
#fields = c.fetchall()
for row in c:
print (row)
检查文件中查询的格式。将其添加到问题中。让您的代码在执行查询时显示查询,以便您知道是哪个查询导致了问题,然后让您的问题向我们显示该查询的外观。在问题中添加了SQL file&print语句的请求信息。嗯,为了查看失败的
命令
,您需要在尝试执行之前打印它。这就是我打印的方式,即在执行SQL之前,看起来查询是按顺序执行的,但请注意,因为SQL计数输出显示为“Info:(7,)”使用c.fetchall()时导致上述错误的格式?检查文件中查询的格式。将其添加到问题中。让代码在执行查询时显示查询,以便您知道是哪个查询导致问题,然后,您的问题将向我们显示该查询的外观。在问题中添加了SQL文件和打印语句的请求信息。嗯,为了查看失败的命令
,您需要打印它,然后再尝试执行它。这就是我在执行SQL之前打印的方式,看起来查询是按顺序执行的,但请注意,因为SQL计数输出显示为“Info:(7,)”格式,这导致了在使用c.fetchall()时出现上述错误?