我知道这是一个非常基本的问题,但我在第一次从xml文件导入数据时遇到了困难。我创建了表“Regions”,它只有两列--ID和Name。 xml文件包含相同的列名。
为了批量导入数据,我使用以下SQL命令:
LOAD XML LOCAL INFILE'C:\ Users \ Dell \ Desktop \ regions.xml'
INTO TABLE Regions
(ID
,Name
)
但是我收到错误#1148 - 此MySQL版本不允许使用该命令
现在已经研究过互联网,要允许此命令需要更改其中一个命令文件,但我的服务提供商不允许我访问它。是否有另一种方法来编写SQL代码并执行与上面的代码完全相同的操作,基本上只是从xml文件中导入数据?
非常感谢
答案 0 :(得分:0)
由于没有为您启用LOAD DATA INFILE,因此看起来您只有一个选项,那就是为每一行创建一组INSERT语句。如果您使用Excel将XML文件转换为CSV,这是一个简单的步骤。假设你有像这样的数据行
A | B
-----|-------------------------
1 | Region 1
2 | Region 2
我会在C列中创建一个这样的公式
=CONCATENATE("INSERT INTO Regions(ID,Name) VALUES(",A1,",'",B1,"');")
这将导致第一行INSERT INTO Regions(ID,Name) VALUES(1,'Region 1');
。将其归档到电子表格的最后一行。选择所有insert语句并将它们复制到PHPMyAdmin中的Query文本框中,您应该能够插入值。
当我需要将数据导入数据库时,我已多次使用此方法。