Python-使用GetRows()函数时EOF / BOF异常(来自MDX查询)

时间:2019-07-18 08:32:40

标签: python mdx adodb win32com

我编写了以下代码以从多维数据集中检索数据:

rs = win32com.client.Dispatch('ADODB.RecordSet')
rs.__init__
conn = win32com.client.Dispatch('ADODB.Connection')
conn.__init__
conn.CommandTimeout=3000
conn.Open(connString)


#Retrieving data
try:
    rs.Open(mdxQuery, conn, 1, 3)
except Exception as e:
    print("An error occured while trying to retrieve data:")
    print(str(e))
    sys.exit(1)

try:
    t=rs.GetRows()
except Exception as ex:
    print(str(ex))

看来mdx查询还可以,并检索到一些结果(我可以从调试模式中看到它) 但是当我尝试将GetRows()函数的结果分配给变量时,它失败,并显示以下消息:

  

ADODB.Field:BOF或EOF为True,或者当前记录已被删除。请求的操作需要当前记录。

在我看来,GetRows()函数无法处理NULL值。有没有办法告诉该方法跳过NULL值或只用空格填充它,并避免此错误?

谢谢

0 个答案:

没有答案