mysql - 将 CSV 导入 Azure 表存储问题

标签 mysql csv azure azure-table-storage

我从 MySQL 服务器导入导出表的大约 200 行。我不知道我需要分区键和行键,所以我通过 CSV 设置它,创建 2 个新列并用表名称填充它们。然后我导入了 CSV。它向我展示了第一个条目,它看起来不错,所以我导入了它,但中途我收到一条错误,说 N/A Not Acceptable ,然后它退出了。查看导入的数据,完全关闭。

我做错了什么?

我还需要导入大约 200 个表。

示例数据:不是实际数据,因为它是我的用户表(非关系型)

使用 Azure 表存储资源管理器导入

列:名称|用户名|电子邮件 |哈希 |盐|分区键|行键 第 1 行:珍妮特|管理| [email protected] | 203weg0897wg| 33&23j |网站 |网站

事情大致就是这样。但是当我导入时,第一行比列困惑,并且比用户名进入分区键之类的东西要好。它没有导入到正确的列中。

是的,我确实将表名作为分区键和行键。我没有意识到每个实体都需要它是不同的。但我需要知道哪个实体来自哪个表。我应该将它们放入单独的分区吗?我需要将它们全部放在一张 table 上。解决方案是什么?

最佳答案

But when I import the first row is fine than the columns mess up and than like username goes into partition key and stuff like that. It doesn't get imported into the right columns.

如果使用 Azure 存储资源管理器将 .CSV 导入到 Azure 表存储,则 .CSV 文件的数据结构应如下所示:

| PartitionKey | RowKey | Name  | UserName | Email           | Hash          | Salt   |
| ------------ | ------ | ----- | -------- | --------------- | ------------- | ------ |
| site         | site   | Janet | admin    | <a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="78191c151116381f15191114561b1715" rel="noreferrer noopener nofollow">[email protected]</a> | 203weg0897wg  | 33&23j |

注意:PartitionKey需要放在第一列,RowKey需要放在后面。

I need to import about 200 more tables. But I need to know which entity is from which table. Should I put them into separate partitions? I need them all in one table.

根据您的需求,您可以将分区键设置为您的表名,并将行键设置为关联表中实体的标识。正如 Tamra 所说,对于 Azure 表中的每个实体,分区键和行键必须是唯一的。

为了将大约 200 个以上的表导入到 azure 表中,您可以从 MYSQL 表中导出数据并修改 .CSV 文件中的数据结构,然后将 .CSV 逐一导入到 azure 表中。为了更好地理解Azure存储表设计,您可以引用这个tutorial

此外,您可以使用适合您的开发语言的 PowerShell scriptAzure Storage Client Library 将 CSV 文件导入到 Azure 表存储。

关于mysql - 将 CSV 导入 Azure 表存储问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39230937/

相关文章:

python - 使用python将csv文件写入SQL Server数据库

csv - 如何在flutter中加载csv文件?

azure - 部署 Web 作业时, "in-progress"作业会发生什么情况?

azure - Function App 使用除 MS 文档所述之外的其他出站 IP 地址

PHP导出mysql数据到excel表

php - nl2br() 不能正常工作

php - 可捕获的 fatal error : Object of class mysqli_stmt could not be converted to string

mysql - 查询以数百万行填充 MySQL 数据库

python - csv 将所有行写入一列 python

asp.net - 使用 ARM 部署 Azure Web 应用程序包