BaseX使用疑问:修改XML后是否每次都需设置上下文?
BaseX修改XML后无需手动设置上下文的解决方法
不用每次修改XML后都右键执行「Set as Context」,给你几个更高效的方案:
直接在XQuery中引用本地文件
把查询语句改成直接读取本地XML文件的形式,比如:doc("/绝对路径/你的文件.xml")//你要查询的节点这样每次运行查询都会直接读取最新的本地文件内容,完全绕开数据库的缓存问题。
刷新数据库同步文件变更
如果你习惯用数据库模式,修改XML保存后,右键点击BaseX里对应的数据库,选择「Refresh」选项,数据库就会同步本地文件的最新修改,之后再运行查询就能拿到更新后的结果。开启自动刷新功能
打开BaseX的「Options」设置面板,找到「Auto Refresh」相关选项并开启,开启后BaseX会自动监测本地XML文件的变化,实时同步到数据库中,修改保存后直接运行查询即可,无需任何手动操作。
补充说明
BaseX创建数据库时会把XML内容加载到自身的存储系统中,默认不会自动同步本地文件的修改,所以你之前才会一直拿到旧结果。上面的方法都能解决这个问题,根据你的测试需求选最顺手的就行。
内容的提问来源于stack exchange,提问作者samsal77
相关产品推荐
相关产品推荐

