PHP/SQL-仅插入现有列
我将根据第三方提交的XML文件的内容更新数据库 问题是XML文件的结构会有所不同,并且也有不进入数据库的节点值 由于结构a不同,我必须检查节点的名称,并根据该名称将子数据定向到正确的表。但是,我需要尝试将所有子节点值插入数据库,因为我无法预测将出现哪些子节点 因此,在一种情况下,我可能会得到:PHP/SQL-仅插入现有列,php,sql,Php,Sql,我将根据第三方提交的XML文件的内容更新数据库 问题是XML文件的结构会有所不同,并且也有不进入数据库的节点值 由于结构a不同,我必须检查节点的名称,并根据该名称将子数据定向到正确的表。但是,我需要尝试将所有子节点值插入数据库,因为我无法预测将出现哪些子节点 因此,在一种情况下,我可能会得到: <xyz> <abc> <test>test</test> </abc> </xyz> 测试 另一次可能是: <xy
<xyz>
<abc>
<test>test</test>
</abc>
</xyz>
测试
另一次可能是:
<xyz>
<pqr>
<test>test</test>
<name>test</name>
</pqr>
</xyz>
测试
测试
因此,我可以很容易地将表名设置为abc或pqr,但是如果pqr没有“test”列,那么我就无法循环向SQL INSERT添加值
理想情况下,我可以用SQL编写一些东西,忽略向不存在的列添加值的尝试。AeroX works建议的MySQL的Show columns命令。在导入前使用MySQL命令查看可以存储的内容,并使用PHP检查字段是否可以导入。您可以将每一行存储在数组或类中,并在读取每一行后进行保存