XML 是一种非常有用的技术,用于在不同数据库之间或数据库与其他程序之间移动数据。但是,它本身并不是数据库。XML 是一种数据交换格式。可以拥有可以使用 XPath 表达式查询 DOM 的 XML 解析库,但这与 DBMS 不同。
我宁愿在 XML 上使用任何 DBMS。
在这里,我发现了另一个关于此问题的 stackoverflow 问题,它有很好的答案:
“XML 不是数据库。它从来都不是数据库。它永远不会成为数据库。关系数据库是经过验证的技术,具有 20 多年的实施经验。它们是坚固、稳定、有用的产品。他们不会消失。XML 是一种非常有用的技术,用于在不同数据库之间或数据库与其他程序之间移动数据。但是,它本身并不是数据库。不要像一个人一样使用它。“</p>
https://stackoverflow.com/questions/201568/when-would-i-use-xml-instead-of-sql#:~:text=XML%20is%20a%20very%20useful,is%20not%20itself%20a %20database.&text=XML%20is%20a%20data%20interchange,same%20thing%20as%20a%20DBMS。
您可以创建三个表:
Country (ID int, Name varchar(200));
State (ID int, Name varchar(200), CountryID int);
City (ID int, Name varchar(200), StateID int);
所有三个表的 ID 字段都可以是自动递增的主键列。State 表中的 CountryID 将是 Country 表中 ID 列的外键,City 表中的 StateID 将是 State 表中 ID 列的外键。
您还可以将代码列添加到所有三个表中,以将国家代码、州代码和城市代码添加到您的数据中。