从Cloud SQL导入CSV文件/将数据导出到CSV文件

时间:2019-05-16 16:11:50

标签: php mysql google-cloud-platform google-cloud-sql import-csv

在Cloud SQL和MySQL引擎上,如何替换LOAD DATA INFILE ... REPLACE功能?

我们正在使用App Engine和Cloud SQL将网络平台迁移到Google Cloud。

我们以IGNORE或REPLACE模式使用LOAD DATA INFILE将CSV文件导入到我们的表中。

由于Cloud SQL不支持LOAD DATA INFILE指令,我们如何设法替换它?

我尝试使用gcloud sql import csv和Cloud SQL API,但是似乎不存在IGNORE或REPLACE重复数据的选项。

举个例子,这是导入数据的表:

C1 | C2 | C3 | C4
-----------------
1  | 2  | 3  | A |
4  | 5  | 6  | B |
7  | 8  | 9  | C |

此表在C1 + C2 + C3列上有一个唯一索引

现在,我需要导入一个包含以下内容的CSV文件:

1,2,3,AA

如果我将LOAD DATA INFILE和REPLACE选项一起使用,则导入后的表将如下所示:

C1 | C2 | C3 | C4
-----------------
1  | 2  | 3  | AA |
4  | 5  | 6  | B  |
7  | 8  | 9  | C  |

因此,我想通过gcloud sql import csv或Cloud SQL API在Cloud SQL上获得相同的行为。

我们需要使用PHP以编程方式进行此操作。

有可能还是有其他可能性?

谢谢

1 个答案:

答案 0 :(得分:1)

App引擎支持LOAD DATA LOCAL INFILE。

这个问题的答案在以下链接中:

Importing Data to Google Cloud SQL via CSV

Google Cloud SQL: Alternative to LOAD DATA INFILE