mysql - 将 XML 文件与 MySQL 表合并

标签 mysql xml merge

我有这样的 XML 文件:

<?xml version="1.0"?>
<results>
  <row id="100"><name>name blah</name></row>
  <row id="200"><name>name blah blah</name></row>
  <row id="300"><name>name blah blah blah</name></row>
</results>

...和一个简单的 MySQL 表:

CREATE TABLE `names` (
  `id` bigint(20) NOT NULL,
  `name` varchar(100) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

我想合并这两个东西,用 XML 文件中不存在的行更新我的表。

考虑到 XML 文件和 MySQL 表由超过 100k 行组成,我想每周运行一次更新...

非常感谢!

最佳答案

LOAD XML语句 + MySQL 5.5 中的 REPLACE 子句

代码示例-

LOAD XML LOCAL INFILE 'names.xml'
REPLACE
INTO TABLE names
ROWS IDENTIFIED BY '<row>';

另一种方式 - Data Import tool (选择 XML 格式和追加/更新模式)

关于mysql - 将 XML 文件与 MySQL 表合并,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5592874/

相关文章:

php - 使用来自 mysql 数据库的信息填充 HTML 单选按钮

mysql - 当日期存储为 varchar 时如何比较日期

c# - 我如何从另一个可枚举的 c# 中插入一个可枚举的

MySQL查询以显示每周的运行总计

sql - MySQL Select 语句 - 两个表,根据其他表的计数对一个表进行排序

xml - F# Xml Type Provider 测试节点是否存在

html - XML文件中的url是什么意思

php - 如何使用对象运算符引用带有命名空间前缀的 XML 元素?

java - 如何在java中给定单元格索引获取合并单元格的数据?

java - 在 hibernate 中更新对象的字段