Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 将CSV导入Azure表存储问题_Mysql_Csv_Azure_Azure Table Storage - Fatal编程技术网

Mysql 将CSV导入Azure表存储问题

Mysql 将CSV导入Azure表存储问题,mysql,csv,azure,azure-table-storage,Mysql,Csv,Azure,Azure Table Storage,我从MySQL服务器导入了大约200行导出表。我不知道我需要一个分区键和行键,所以我通过CSV设置它,创建两个新列并用表名填充它们。然后我导入了CSV。它向我显示了第一个条目,它看起来很好,所以我在中途导入了它。我收到一个错误,说N/a不可接受,它退出了。查看导入的数据,它完全关闭了 我做错了什么 我需要再导入大约200张表 示例数据:不是实际数据,因为它是我的用户表(非关系型) 使用Azure表存储资源管理器导入 列:Name | Username | Email | Hash | Salt

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

我做错了什么

我需要再导入大约200张表

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

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

列:Name | Username | Email | Hash | Salt | ParitionKey | RowKey 第一排:珍妮特行政admin@gmail.com|203weg0897wg | 33&23j |现场|现场

事情就是这样发展的。但是,当我导入第一行时,列会变得混乱,用户名会进入分区键之类的东西。它没有被导入到正确的列中

是的,我确实把表名作为分区键和行键。我没有意识到每一个实体都需要它是不同的。但我需要知道哪个实体来自哪个表。我应该把它们放在单独的分区中吗?我需要他们都在一张桌子上。解决办法是什么

但是,当我导入第一行时,列会变得混乱,用户名会进入分区键之类的东西。它没有被导入到正确的列中

如果使用Azure Storage Explorer将.CSV导入Azure表存储,则.CSV文件的数据结构应如下所示:

| PartitionKey | RowKey | Name  | UserName | Email           | Hash          | Salt   |
| ------------ | ------ | ----- | -------- | --------------- | ------------- | ------ |
| site         | site   | Janet | admin    | admin@gmail.com | 203weg0897wg  | 33&23j |
注意:PartitionKey需要放在第一列,RowKey需要放在后面

我需要再导入大约200张表。但我需要知道哪个实体来自哪个表。我应该把它们放在单独的分区中吗?我需要他们都在一张桌子上

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

为了将大约200多个表导入azure表,您可以从MYSQL表导出数据并修改.CSV文件中的数据结构,然后逐个将.CSV导入azure表。为了更好地理解Azure存储表设计,您可以参考以下内容

此外,您可以使用或为您的开发语言将CSV文件导入Azure表存储

但是,当我导入第一行时,列会变得混乱,用户名会进入分区键之类的东西。它没有被导入到正确的列中

如果使用Azure Storage Explorer将.CSV导入Azure表存储,则.CSV文件的数据结构应如下所示:

| PartitionKey | RowKey | Name  | UserName | Email           | Hash          | Salt   |
| ------------ | ------ | ----- | -------- | --------------- | ------------- | ------ |
| site         | site   | Janet | admin    | admin@gmail.com | 203weg0897wg  | 33&23j |
注意:PartitionKey需要放在第一列,RowKey需要放在后面

我需要再导入大约200张表。但我需要知道哪个实体来自哪个表。我应该把它们放在单独的分区中吗?我需要他们都在一张桌子上

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

为了将大约200多个表导入azure表,您可以从MYSQL表导出数据并修改.CSV文件中的数据结构,然后逐个将.CSV导入azure表。为了更好地理解Azure存储表设计,您可以参考以下内容


此外,您还可以使用或针对您的开发语言将CSV文件导入Azure表存储。

请使用以下信息更新您的问题:1)您正在导入的示例数据(前几行应该可以),2)请解释您所说的查看导入的数据的
意思,它完全关闭。
和3)您如何导入数据?您是否使用某种工具进行导入?您说过您“通过CSV设置它,创建2个新列并用表名填充它们”。分区键和行键都使用了表名吗?这两列构成了表的主键,因此表中每个实体的主键组合都必须是唯一的。请使用以下信息更新您的问题:1)导入的示例数据(前几行应该可以),2)请解释您所说的查看导入的数据的
意思,它完全关闭。
和3)您如何导入数据?您是否使用某种工具进行导入?您说过您“通过CSV设置它,创建2个新列并用表名填充它们”。分区键和行键都使用了表名吗?这两列构成了表的主键,因此这两列的组合对于表中的每个实体都必须是唯一的。谢谢,但是对于每个实体(我猜是一条记录),每个表都有相同的分区键,这样好吗?因此,1个表分区键中的所有用户都将是表名。另外,您对行键有什么建议吗?PartitionKey存储标识分区的值。分区对于表的可伸缩性是不可或缺的。具有相同PartitionKey值的实体存储在同一分区中。为了充分利用Azure表,我建议您将导出的同一表中的实体放在同一分区中。有关更多详细信息,请参阅此。如果导出的实体没有任何唯一标识,您可以通过生成GUID字符串或其他方式自己创建它。好的,这就是我的想法。但是Azure存储资源管理器在找我