我继承了一个使用Azure表存储数据库的项目。我使用Microsoft Azure Storage Explorer作为查询和管理数据的工具。我试图将数据从我的Dev数据库迁移到我的QA数据库。为此,我从Dev数据库表导出CSV,然后尝试导入QA数据库表。对于少量表,当我尝试导入CSV时出现以下错误:
失败:类型''的属性不受支持。
之前我碰到这个,因为我输出了一个"输入"来自Dev的CSV,我检查了所有" @ type"列有值。他们做到了。然后我将CSV(包含数千条记录)拆分为较小的文件,以尝试确定哪个记录是问题。当我这样做并开始导入它们时,我最终能够通过特殊的单个文件成功导入所有记录。几乎像约束违规问题。
我也看到了不同类型的错误。例如:
类型的属性' Double'不受支持。
在这种情况下,类型" Double"的特定表中已经存在一列。
无论如何,既然我再次看到它,我就无法解决它。有什么想法吗?
更新
我能够跟踪这些错误中的一些错误" bad" CSV中的数据。它是Edm.String
字段中的JSON字符串,由于某种原因,它不是很喜欢。我使用在线工具缩小了JSON并且导入正常。但是,有一个数据集有超过7,000条我试图导入的记录(我之前在本文前面提到的那个记录)。我最终将其分解为不同的文件,并能够成功地单独导入它们。但是,当我尝试通过单个文件加载所有数据后导入整个文件时,我再次收到错误。
答案 0 :(得分:1)
我将CSV(包含数千条记录)拆分为较小的文件,以尝试确定哪个记录是问题。当我这样做并开始导入它们时,我最终能够通过特殊的单个文件成功导入所有记录。
根据您的测试,源CSV文件的格式和数据似乎没问题。在导入大型CSV文件时,很难找出Azure Storage Explorer返回这些意外错误的原因。您可以尝试升级Azure存储资源管理器,并检查是否可以使用最新的Azure存储资源管理器成功导出和导入数据。
此外,您可以尝试使用AzCopy (设计用于使用具有最佳性能的简单命令将数据复制到Microsoft Azure Blob,文件和表存储中)到export/import table。< / p>
导出表格
AzCopy /Source:https://myaccount.table.core.windows.net/myTable/ /Dest:C:\myfolder\ /SourceKey:key /Manifest:abc.manifest
导入表格
AzCopy /Source:C:\myfolder\ /Dest:https://myaccount.table.core.windows.net/mytable1/ /DestKey:key /Manifest:"abc.manifest" /EntityOperation:InsertOrReplace