1

有python中pygrametl包经验的人可以帮我理解下面的错误吗

pygrametl 文档中的示例代码:

productDimension = Dimension(
    name='product',
    key='productid',
    attributes=['name', 'category', 'price'],
    lookupatts=['name'])

我写的代码:

artist_dim=Dimension(
    name='Artist_dim',
    key='row_id',
    attributes=['row_id','Artist_name','Artist_type','Country','ETL_BATCH_ID'],
    lookupatts=['Artist_name']
    ) 

错误:

  Traceback (most recent call last):
      File "artist_petl.py", line 40, in <module>
        attributes=['row_id','Artist_name','Artist_type','Country','ETL_BATCH_ID']
      File "C:\Anaconda3\lib\site-packages\pygrametl\tables.py", line 189, in __init__
        (self.quote(key), name))
      File "C:\Anaconda3\lib\site-packages\pygrametl\__init__.py", line 663, in execute
        self.__cursor.execute(stmt, arguments)
    TypeError: expecting a dictionary, sequence or keyword args
4

1 回答 1

0

我不确定这是否是您的问题的原因,但您不应该将添加到属性中:

attributes:维度表中的属性名称序列。不应包含在 key 参数中给出的主键的名称。

来源:http ://chrthomsen.github.io/pygrametl/doc/api/tables.html (参见Dimension类参数)

于 2017-10-19T07:45:42.880 回答